Esercizio 4parola letta dalla memoria con la sindrome di Hamming
In questa pagina 5
Testo (svolto in aula, lezione del 2 novembre 2016). Data la parola di dati , i bit di controllo memorizzati sono . Dopo aver memorizzato parola e bit di controllo, si legge dalla memoria e i bit di controllo calcolati sui dati letti risultano . Qual è la parola di dati letta dalla memoria?
Idea
Non serve rifare la tabella dei dati: basta la sindrome, XOR tra i bit di controllo memorizzati e quelli ricalcolati sui dati letti. Se è diversa da zero, il suo valore è la posizione del bit cambiato (vedi Codifiche binarie e informazione non numericaBit, byte e multipli (potenze di 2 e di 10); codici BCD e Gray; caratteri ASCII, Unicode e UTF-8; ordine dei byte (little e big endian); bit di parità e codice di Hamming per rilevare e correggere errori.Codifiche binarie e informazione non numerica →).
Sindrome
C'è un errore nel bit in posizione 10.
Quale dato è in posizione 10
Disposizione per , (dati nelle posizioni che non sono potenze di 2, dal meno significativo in posizione 3):
| Posizione | 3 | 5 | 6 | 7 | 9 | 10 | 11 | 12 |
|---|---|---|---|---|---|---|---|---|
| Dato |
La posizione 10 contiene .
Parola letta
Nella parola memorizzata il bit (terzo da sinistra) vale 1. In lettura è cambiato, quindi vale 0:
Verifica
Ricalcolo dei bit di controllo sulla parola letta (, , , gli altri 0):
- (posizioni 3, 5, 7, 9, 11)
- (posizioni 3, 6, 7, 10, 11)
- (posizioni 5, 6, 7, 12)
- (posizioni 9, 10, 11, 12)
✓, proprio i bit di controllo calcolati del testo. Il sistema di correzione, invertendo , restituisce la parola originale .
Versione ripasso
Testo (svolto in aula, lezione del 2 novembre 2016). Data la parola di dati , i bit di controllo memorizzati sono . Dopo aver memorizzato parola e bit di controllo, si legge dalla memoria e i bit di controllo calcolati sui dati letti risultano . Qual è la parola di dati letta dalla memoria?
Metodo: la sindrome (XOR tra controlli memorizzati e ricalcolati) dà la posizione del bit errato (Codifiche binarie e informazione non numericaBit, byte e multipli (potenze di 2 e di 10); codici BCD e Gray; caratteri ASCII, Unicode e UTF-8; ordine dei byte (little e big endian); bit di parità e codice di Hamming per rilevare e correggere errori.Codifiche binarie e informazione non numerica →).
- Sindrome: : errore in posizione 10.
- Dati in 3, 5, 6, 7, 9, 10, 11, 12 : la posizione 10 è .
- Nella parola memorizzata (terzo bit da sinistra) vale 1, letto vale 0.
Parola letta . Verifica: sui dati letti , , , , cioè ✓; invertendo si torna a .