Hamming
m= mensaje
T= trama de m+n bits
n= número de bits de Hamming.
Para encontrar n uso la desigualdad:
2n ≥ m + n + 1
Ejemplo
Dado m= “101101010010010” encontrar T
2n ≥ m + n + 1
25 ≥ 15 + 5 + 1
32 ≥ 21
n=5
T= 2nm
T es de 20 bits:
Colocamos una H que representará los bits n de Hamming en cualquiera de los 20 lugares:
T=
20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
H | H | H | H | H |
Ahora ponemos “m” en los lugares restantes:
T=
20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
H | 1 | H | 0 | 1 | 1 | 0 | 1 | H | 0 | 1 | 0 | 0 | 1 | 0 | 0 | H | 1 | 0 | H |
Anotamos la posición de todos los unos.
1’s= 19, 16, 15, 13, 10, 7, 3
Ahora los sumamos de la siguiente forma:

T=
20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
0 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 1 |
Verificación
Tomamos la posición de todos los unos.
1’s= 19, 18, 16, 15, 13, 12, 10, 7, 4, 3, 1
No tomamos en cuenta los unos que se encuentran donde estaban las H.
Ahora sumamos el código de Hamming a estas posiciones:

En caso de que hubiera error, por ejemplo que saliera 01101 el resultado nos dará la posición donde se encuentra el bit alterado, que en ese caso sería la posición 13.
No hay comentarios:
Publicar un comentario