Come calcolare il codice di Hamming

May 3

Come calcolare il codice di Hamming


codici di Hamming sono usati per inserire informazioni errore correzione in flussi di dati. I codici sono progettati in modo che un errore non può essere rilevato solo, ma corretti. Aggiunta di informazioni di correzione di errore aumenta la quantità di dati, ma aumenta l'affidabilità delle comunicazioni su mezzi con elevati tassi di errore.

Hamming codifica può essere difficile da implementare, ma può essere fatto molto velocemente usando i trucchi aritmetiche a livello di bit. Questo lo rende un sistema di correzione di errore utili per alta velocità e applicazioni embedded.

istruzione

1 Creare la parola di dati. Ogni bit con una posizione che è una potenza di due (prima, seconda, quarta, ecc) dovrebbe essere riservato per informazioni di parità. Utilizzare il tempo di una parola come è necessario per adattare i dati di origine e bit di parità.

esempio:

1 1 0 1 0 0 1 0 diventa

1 1 0 1 0 0 1 0

I bit rimangono nello stesso ordine, ma sono stati sparsi per adattare i bit di parità.

2 Calcolare il primo bit di parità. A partire con il primo bit, leggere un bit, quindi saltare un po 'e ripetere, mentre contando il numero di quelli incontrati. bit di parità contano come zeri.

Se il numero di quelli è pari, impostare il primo bit a zero. In caso contrario, impostarlo a uno.

esempio:

Bit 1, 3, 5, 7, 9 e 11

1 1 0 1 0 0 1 0, 11101, contengono quattro più. Questo è anche, in modo che il primo bit è impostato a zero: 0 1 1 0 1 0 0 1 0

3 Calcolare i bit di parità rimanenti. Bit Due legge due bit a partire dal bit di due, poi salta due e ripetizioni. Bit quattro letture quattro bit poi salta quattro e inizia con il bit quattro. Continuare con questo modello fino a quando non sono nessuna parità bit lasciati da calcolare.

esempio:

Bit 2: 0

1 1 0 1 _ 0 0 1 0 controlli 1, 01, 01, che contiene 3 quelli, così bit 2 è impostato a uno.
Bit 4: 0 1 1 1 0 1 _ 0 0 1 0 controlli 101, 0, che contiene 2 più, quindi il bit 4 è impostato a zero.
Bit 8: 0 1 1 0 1 0 1 0 0 1 0 _0010 controlli, con solo uno, impostando il bit 8 a uno.

La parola codificata è quindi 011.010.110,01 mila.

4 Confermare la parola. Se una parola è danneggiato, i bit di parità non corrisponderanno cosa ci si aspetta. Per confermare che una parola non è danneggiato, è sufficiente calcolare i bit di parità con passi a due e tre. Se tutti i bit non corrispondono, registrare le loro posizioni.

5 Correggere il cattivo bit. Se si trova bit di parità non corretti, semplicemente sommare le posizioni dei bit. La somma è la posizione del bit errato. Vibrazione il valore del bit in quella posizione.

Ad esempio, se il bit di parità uno e quattro sono corretti, lanciando il valore del quinto bit correggerà l'errore.

Consigli e avvertenze

  • L'aggiunta di un bit di parità supplementare che calcola il numero di zeri nella intera parola permette di rilevare errori di due bit. codici di Hamming normali forniranno il risultato sbagliato nel caso di errore di due bit.