Está en la página 1de 6

UNIVERSIDAD NACIONAL DE LOJA

REA DE LA ENERGA, LAS INDUSTRIAS Y


LOS RECURSOS NATURALES NO
RENOVABLES
CARRERA DE INGENIERA EN ELECTRNICA Y
TELECOMUNICACIONES
MDULO VI
TEORIA DE LA INFORMACIN Y CODIFICACIN

DISTANCIA DE HAMMING
POR: CRISTIAN AREVALO
DOCENTE: ING. PAULO SAMANIEGO
PARALELO: B SECCIN VESPERTINA
LOJA ECUADOR

INTRODUCCIN
A la hora de transmitir informacin es muy probable que se produzcan errores entre los
datos enviados y los recibidos, un mtodo para poder detectar y corregir dichos errores
es por medio de la distancia de Hamming, para ello entenderemos el algoritmo para
generar un cdigo Hamming, adems como analizar para ver si hay un error y si lo
hubiera como corregirlo.
MARCO TERICO
Cdigo de Hamming
Es un cdigo que se utiliza en la deteccin y correccin de errores que se producen en
la transmisin de cdigos binarios, la palabra de cdigo se conforma por los bits de
paridad(comprobacin) y los bits de datos(informacin).
Distancia de Hamming
La distancia de Hamming entre dos secuencias binarias, i y i, de la misma longitud,
est definida por el nmero de lugares en que difieren. Sea, por ejemplo,
i = 101111
i = 111100
y D(i, i) la distancia de Hamming entre i y i. Entonces D(i, i) = 3
En la tabla 1 se muestran tres cdigos. En la cual podemos darnos cuenta que las
distancias mnimas para los cdigos A, B y C son 1, 2 y 3 respectivamente
Cdigo A Cdigo B Cdigo C
000
000
000
001
011
111
010
101
011
110
100
101
110
111
Tabla 1.

Distancia mnima de un cdigo es la menor de las distancias entre dos combinaciones


binarias cualesquiera pertenecientes a dicho cdigo.
La distancia mnima entre palabras de un cdigo est ntimamente relacionada con su
probabilidad de error. En general a mayor distancia mnima, la probabilidad de error
ser menor.
Sea i la palabra transmitida y j una de las posibles secuencias de salida del canal.
Supngase, asimismo, que D es la distancia de Hamming entre esas dos secuencias
binarias de longitud n.

En ese caso i y j, difieren exactamente en D lugares, y la probabilidad de recibir j al


enviar i es precisamente la de que aparezca un error en cada uno de los D lugares en
que difieren y no se produzca, en cambio, en los n - D restantes.

Figura 1. Regla de mxima posibilidad de (BSC)n

Cuanto mayor sea la distancia entre j y la secuencia transmitida, menor ser la


probabilidad de recibirla.
Algoritmo del cdigo de Hamming
El cdigo Hamming se genera a partir de una distancia mnima de 3, ya que una distancia
de 1 o 2 es inconveniente para poder generar un cdigo para detectar un error.
Si se tuviese una distancia de 1 no tendramos valores para saber si hay o no un error. Si
se tienen una distancia de 2 se podra lograr un sistema de correccin de error con un
bit de paridad, pero el problema que esto lleva es que un sistema con distancia 2 puede
tener datos errneos que pueden pasar como datos correctos.
Con la distancia de 3 se tiene que los cdigos no van a tener datos o resultados similares
por ende se puede detectar el error y se puede desarrollar un sistema para su
correccin.
El algoritmo a seguir para la generacin del cdigo de Hamming es el siguiente:
1. Todos los bits cuya posicin es potencia de 2 se utilizan como bits de paridad
(posiciones 1, 2, 4, 8, 16, 32, 64, etc.) en forma matemtica est expresada por:

2. Los bits del resto de posiciones son utilizados como bits de datos (posiciones 3,
5, 6, 7, 9, 10, 11, 12, 13, 14, 15, 17, etc.)
3. Cada bit de paridad lo calculamos al bajar los bits de datos que se encuentran en
dicha posicin con su bit menos significativo igual a 1(se recomienda poner la
posicin en binario para detectar con mayor facilidad el bit menos significativo).
Luego de ello verificamos si tenemos paridad par colocamos un cero y si tenemos

paridad impar colocamos un uno, este proceso lo repetimos hasta calcular todos
los bits de paridad.
4. Una vez realizado el paso 3 con todos los bits de paridad bajamos todos los bits
de datos y todos los bits de paridad calculados, obteniendo la palabra cdigo a
ser transmitida.
Ejemplo 1: Generar el cdigo de Hamming para el siguiente cdigo de datos = 0101001
p = bit de paridad
d = bit de datos
En base a la palabra de datos se procede a generar el cdigo de Hamming

Posicin
Palabra original
p1
p2
p3
p4
Palabra+paridad

p1

p2

d1

p3

d2

d3

d4

p4

d5

d6

d7

0001
(1)

0010
(2)

0011
(3)

0100
(4)

0101
(5)

0110
(6)

0111
(7)

1000
(8)

1001
(9)

1010
(10)

1011
(11)

1
1

0
0

0
0
0

1
1
1

0
0

1
1

0
0

1
1
1
1

1
1

0
0

Tabla 2. Ejemplo de Generacin del cdigo de Hamming

La nueva palabra es: 10001011001


La nomenclatura para determinar los bits de paridad queda as
D(11, 7) = dH = 4 bits de paridad
Donde la diferencia entre los dos nos da el nmero de bits de paridad
Para cualquier cdigo en general quedara:
D(nmero de bits totales, nmero de bits de datos)
Deteccin de errores en el cdigo de Hamming
Para realizar la deteccin de errores se recalcula la paridad a partir de la palabra recibida
en el receptor, para ello se sigue los pasos similares para la generacin del cdigo, una
vez hallada la paridad se la compara con la original si es la misma no da error, pero si
son diferentes se procede a comparar cada bit de la paridad los que son diferentes se
los representa como 1 y a los que son similares como 0 luego a la nueva cifra binaria se
la transforma a decimal y el valor que da representa la posicin donde ocurri el error,
con lo cual se cambia ese bit y as se corrige el error.
Ejemplo 2: Del ejemplo 1 tenemos que:
Palabra transmitida: 10001011001

Palabra recibida: 10001011000


Encontrar si existe error y corregirlo.

Pos.
Pal.
p1
p2
p3
p4

p2

d1

p3

d2

d3

d4

p4

d5

d6

d7

0001
(1)

0010
(2)

0011
(3)
0
0
0

0100
(4)

0101
(5)
1
1

0110
(6)
0

0111
(7)
1
1
1
1

1000
(8)

1001
(9)
0
0

1010
(10)
0
0

1011
(11)
0
0
0

0
0

0
1
0
0

1
0
0
1

Comparacin

Paridad
calculada

p1

Paridad
almacenada

en base a la palabra recibida se recalcula la paridad para detectar si hay errores

1
1
0
1

Tabla 3. Ejemplo de deteccin de error

Comprobacin de paridad: 1011 => 11 posicin del error


Se corrige en la posicin 11
Cdigo corregido = 10001011001 es igual al transmitido
Ejercicio: Generar el cdigo de Hamming para el siguiente cdigo de datos = 11011, y
luego, y luego detectar si hay error en la siguiente palabra recibida = 001000111
p = bit de paridad
d = bit de datos

Posicin
Palabra original
p1
p2
p3
p4
Palabra+paridad

p1

p2

d1

p3

d2

d3

d4

p4

d5

0001
(1)

0010
(2)

0011
(3)

0100
(4)

0101
(5)

0110
(6)

0111
(7)

1000
(8)

1001
(9)

1
1

1
1
1

0
0

1
1
1
1

1
1

1
1

1
1

Tabla 4. Ejercicio de Generacin del cdigo de Hamming

La nueva palabra es: 001010111


D(11, 7) = dH = 4 bits de paridad
Para la deteccin de errores tenemos
Palabra transmitida: 001010111
Palabra recibida: 001000111
en base a la palabra recibida se recalcula la paridad para detectar si hay errores

Pos.
Pal.
p1
p2
p3
p4

p3

d2

d3

d4

p4

d5

0001
(1)

0010
(2)

0011
(3)
1
1
1

0100
(4)

0101
(5)
0
0

0110
(6)
0

0111
(7)
1
1
1
1

1000
(8)

1001
(9)
1
1

1
0

0
0

1
0
1
1

0
0
0
1

Comparacin

d1

Paridad
almacenada

p2

Paridad
calculada

p1

1
0
1
0

Tabla 5. Deteccin de error

Comprobacin de paridad: 0101 => 5 posicin del error


Se corrige en la posicin 5
Cdigo corregido = 001010111es igual al transmitido
CONCLUSIONES:
La efectividad de los cdigos de bloque depende de la diferencia entre una palabra
de cdigo vlida y otra. Cuanto mayor sea esta diferencia, menor es la posibilidad
de que un cdigo vlido se transforme en otro cdigo vlido por una serie de
errores.
La correccin de error solo se puede realizar a un bit, por lo cual es un mtodo no
tan eficiente para poder corregir ms de un bit errneo se implement la
extensin del cdigo de Hamming.
BIBLIOGRAFA.
[1] Abramson, Norman; Teora de la Informacin y Codificacin; 5ta ed.; Paraninfo;
Madrid, 1981.
[2] Cisneros, Alvaro; Spulveda, Daniel; Cdigo de Hamming para deteccin y Correccin
de Errores; Universidad Distrital Francisco Jos De Caldas; Bogot; 2012. Disponible
en:
https://codigohammingud.wikispaces.com/file/view/C%C3%93DIGO+DE+HAMMIN
G+2012.pdf/345893984/C%C3%93DIGO+DE+HAMMING+2012.pdf
[3] Rodrguez, Vidal; Cdigos de Hamming; Universidad Politcnica de Valencia; Espaa;
2011. Disponible en: https://www.youtube.com/watch?v=gQK9nROFX20
[4] Cdigo Hamming; 2010. Disponible en:
https://www.youtube.com/watch?v=Y5omFghds4U

También podría gustarte