Come calcolare il codice di Hamming

Autore: Sharon Miller
Data Della Creazione: 25 Gennaio 2021
Data Di Aggiornamento: 5 Maggio 2024
Anonim
Codice di Hamming, calcolo bit di Check
Video: Codice di Hamming, calcolo bit di Check

Contenuto

I codici di Hamming vengono utilizzati per inserire informazioni sulla correzione degli errori nei flussi di dati. I codici sono progettati in modo che un errore non solo venga rilevato, ma anche corretto. L'aggiunta di informazioni sulla correzione degli errori aumenta la quantità di dati, ma aumenta anche l'affidabilità delle comunicazioni sui supporti con tassi di errore elevati.

La codifica di Hamming può essere complicata da implementare, ma può essere eseguita molto rapidamente utilizzando trucchi aritmetici a livello di bit. Ciò consente la creazione di un sistema di correzione degli errori utile e ad alta velocità, da utilizzare nelle applicazioni embedded.

Passo 1

Crea la parola dati. Qualsiasi bit con una posizione che è una potenza di due (primo, secondo, quarto, ecc.) Deve essere riservato per le informazioni di parità. Utilizzare il tempo necessario affinché la parola abbia i dati originali e i bit di parità.


Esempio:

1 1 0 1 0 0 1 0 diventa _ _ 1 _ 1 0 1 _ 0 0 1 0

I bit originali rimangono nello stesso ordine, ma sono stati distribuiti per inserire i bit di parità.

Passo 2

Calcola il primo bit di parità. Partendo dal primo bit, viene letto un bit e poi un bit viene saltato e la procedura viene ripetuta fino alla fine. Nel frattempo viene conteggiato il numero di quelli trovati. I bit di parità non contano in questo processo.

Se il numero di uno è pari, impostare il primo bit a zero. Altrimenti, impostalo su uno.

Esempio:

I bit 1, 3, 5, 7, 9 e 11 di _ _ 1 _ 1 0 1 _ 0 0 1 0, _11101, ne contengono quattro. Questo è pari, quindi il primo bit è impostato su zero: 0 _ 1 _ 1 0 1 _ 0 0 1 0

Passaggio 3

Calcola i bit di parità rimanenti. A partire dal secondo bit, vengono letti due bit e poi due bit vengono saltati e la procedura viene ripetuta fino alla fine. Il quarto bit legge quattro bit, ne salta altri quattro, a partire dal bit quattro. Lo stesso modello è seguito da tutti i bit di parità finché non vengono calcolati tutti.


Esempio:

Bit 2: 0 _ 1 _ 1 0 1 _ 0 0 1 0 controlla _1, 01, 01, che contengono tre unità, quindi il bit 2 è impostato su uno. Bit 4: _ 0 1 1 1 0 1 _ 0 0 1 0 controlla _101, 0, che ne contiene due, quindi il bit 4 è impostato a zero. Bit 8: 0 1 1 0 1 0 1 _ 0 0 1 0 verifica _0010, che ne contiene solo uno, quindi il bit 8 è impostato su uno.

La parola è quindi codificata come 011010110010.

Passaggio 4

Conferma la parola. Se una parola è danneggiata, i bit di parità non corrisponderanno a quanto previsto. Per confermare che la parola non è danneggiata, calcola semplicemente i bit di parità utilizzando i passaggi due e tre. Se i bit non sono gli stessi, registra le loro posizioni.

Passaggio 5

Correggi il bit sbagliato. Se trovi bit di parità errati, aggiungi semplicemente le posizioni dei bit. Il valore della somma è la posizione del bit errato. Modificare il valore del bit in questa posizione.

Ad esempio, se i bit di parità errati sono uno e quattro, la modifica del valore del quinto bit correggerà l'errore.