Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Hamming
Hamming
Hamming
Entonces definimos:
Distancia entre dos representaciones válidas: cantidad de bits para pasar de una
representación a otra.
Distancia mínima de un código: mínima cantidad de bits que se debe cambiar para
pasar de una representación válida a otra.
Sea
M: distancia mínima
D: capacidad de detección
C: capacidad de corrección
≥C
M-1 = D+C , D≥
M D C
1 - -
2 1 -
3 2 -
1 1
4 3 -
2 1
PARIDAD
Se puede trabajar con PARIDAD PAR que es un dato compuesto por un número
par de 1’s o con PARIDAD IMPAR que es un dato compuesto por un número impar de
1’s.
Bit de paridad
DATO BP
El bit de paridad es aquel que hace que el dato tenga una paridad par ó
impar. Ya que la paridad se toma como:
Nro de 1’s del dato + Bit de paridad
1
Ejemplo:
Paridad(A) = 4 + BP = 4 + 0 = 4 = par
Paridad(B) = 5 + BP = 5 + 1 = 6 = par
Paridad(A) = 4 + BP = 4 + 1 = 5 = impar
Paridad(B) = 5 + BP = 5 + 0 = 5 = impar
Sea
n: bits del dato
m: bits redundantes (código)
m ≥ log2(n)+1
Se un dato de n=8 bits, por lo tanto m=4. Los bits de código se colocan en
potencias de dos:
B=(b0 b1 b2 b3 b4 b5 b6 b7)
1 2 3 4 5 6 7 8 9 10 11 12
0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 (pos.)
C0 C1 b0 C2 b1 b2 b3 C3 b4 b5 b6 b7
Cálculo de los Ci
Los Ci se calculan (si es paridad par) haciendo el XOR de los bits del dato en
cuya posición, el bit i de la misma coincida con el bit i de la posición del Ci.
En caso de ser paridad impar se calculan del mismo modo pero se nega el
resultado. (Es decir si con paridad par C1=1 entonces con paridad impar C1=0)
Los Ci vendrían a ser como el bit de paridad del grupo de bits de dato con el
cual se calcula.
3 210
Por ejemplo: la posición del Co es 0001 entonces el bit i=0 de la posición es 1;
las posiciones correspondiente a los bits del dato que cumplen con este
requisito son: 0011, 0101, 0111, 1001, 1011 entonces:
2
Cuando se recupera el dato se recalcula los C’i del mismo modo que antes
indicado y se efectúa la siguiente operación
Entonces P=(Pm-1 Pm-2 ... P0) nos indica la posición del bit en error
OBS.
A B A ⊕ B
0 0 0
0 1 1
1 0 1
1 1 0
Ejemplo
1 2 3 4 5 6 7 8 9 10 11 12
0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 (pos.)
C0 C1 1 C2 0 1 1 C3 0 1 1 0
Paridad Par
C0 = b0 ⊕ b1 ⊕ b3 ⊕ b4 ⊕ b6 = 1
C1 = b0 ⊕ b2 ⊕ b3 ⊕ b5 ⊕ b6 = 1
C2 = b1 ⊕ b2 ⊕ b3 ⊕ b7 = 0
C3 = b4 ⊕ b5 ⊕ b6 ⊕ b7 = 0
1 2 3 4 5 6 7 8 9 10 11 12
0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 (pos.)
1 1 1 0 0 1 1 0 0 1 1 0
1 2 3 4 5 6 7 8 9 10 11 12
0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 (pos.)
1 1 1 0 0 1 1 0 1 1 0
C’0=0
C’1=1
C’2=0
C’3=1
Luego:
P0 = C0 ⊕ C’0 = 1 ⊕ 0 = 1
P1 = C1 ⊕ C’1 = 1 ⊕ 1 = 0
P2 = C2 ⊕ C’2 = 0 ⊕ 0 = 0
P3 = C3 ⊕ C’3 = 0 ⊕ 1 = 1
3
CODIGO HAMMING EXTENDIDO (mínima distancia 4)
H A M M I N G P
P:paridad
• Dos bit en error ⇒ Paridad OK, Hamming≠0, por lo tanto informo, NO corrijo
Marcos Meli
MarcosMeli@gmx.net