Está en la página 1de 19

Cdigos Binarios de

Representacin de Datos
M. en C. Erika Vilches

Parte 2

Deteccin de Errores

Mtodo de Paridad

Cualquier grupo de bits contiene un nmero par o


impar de bits.

Un bit de paridad se aade a un grupo de bits para


hacer el nmero total de 1s siempre par o siempre
impar.

Un bit de paridad par hace el nmero total de 1s


par. Un bit de paridad impar hace el nmero total
de 1s impar.

Un sistema opera con una paridad u otra, pero


nunca con las dos

Ejemplo: En un sistema de paridad par, se

hace un chequeo en cada grupo de bits


recibido, si el nmero total de bits es impar,
ha ocurrido un error.
Par

Impar

Cdigo BCD con bits de paridad

Detectando un Error
Un bit de paridad nos permite detectar un

error de un solo bit (o un nmero impar de


errores, lo que es muy improbable), pero
NO puede verificar si han ocurrido dos
errores en un grupo.

Se puede utilizar para cualquier nmero de


bits

Ejemplo: Asumamos que queremos

transmitir el cdigo BCD 0101 con paridad


par:

Ahora asumamos que ocurre un error en el


tercer bit desde la izquierda (el 1 se
convierte en 0)

Cuando se recibe este cdigo, el circuito para


chequeo del bit de paridad se da cuenta que la
paridad es impar, e indica que existe un error

Ejemplo
Asigne el bit de paridad par apropiado a los
siguientes grupos de cdigo
1010 01010
1000111001001 01000111001001
111000 1111000
101101011111 1101101011111
101101 0101101

Ejercicio
Un sistema de paridad impar recibe los

siguientes grupos de cdigo: 10110, 11010,


110011, 110101110100 y 1100010101010.
Determine qu grupos, en caso de existir,
tienen error.

El siguiente caracter ASCII es recibido por


un sistema de paridad impar: 00110111, es
correcto?

Cdigo Hamming
Para corregir un error detectado, se
requiere ms informacin.

La posicin del error debe ser identificada,


para poder ser corregida.

Se requiere ms de un bit de paridad para


poder corregir un error detectado.

El cdigo Hamming nos permite corregir


errores unitarios.

Nmero de bits de paridad:


El nmero de bits de paridad se determina
Donde d es el nmero de bits de datos
y p el nmero de bits de paridad
Si tenemos 4 bits de datos, entonces

p se encuentra por ensayo y error:


Se requieren 3 bits para proveer correccin de
errores unitarios para 4 bits de datos.

Posicionamiento de los bits de paridad


en el cdigo:
El bit ms a la izquierda se denominara bit 1, el
siguiente bit 2, y as sucesivamente:
Los bits de paridad se ubicarn en las posiciones
numeradas de manera correspondiente con las
potencias ascendentes de 2 (1, 2, 4, 8, ... )
Donde

es un bit de paridad y

es un bit de datos

Asignacin de valores a los bits de


paridad:
1. Numerar la posicin de cada bit en binario
2. Indicar la ubicacin de los bits de paridad y de datos

Note que el nmero en binario de la posicin de la


paridad P1, tiene un 1 en su bit menos significativo. Este
bit de paridad verifica todas las posiciones
(incluyndose a si mismo) que tengan 1s en la misma
ubicacin. Esto se repite para cada bit de paridad.

En cada caso, se le asigna al bit de paridad un nmero


que haga la cantidad de 1s en el conjunto de bits que
verifica ya sea par o impar, dependiendo de cul se
especifique.

Ejemplo
Determine el cdigo Hamming para en
nmero BCD 1001 (bits de datos), usando
paridad par.
1. Encontrar el nmero de bits de paridad
requerido. Para p = 3:

3 bits de paridad son suficientes.


Bits totales del cdigo: 4 + 3 = 7

2. Construir una tabla de posiciones de bits y meter los bits de datos. Los
bits de paridad se determinarn en los siguientes pasos.
3. Determinar los bits de paridad como sigue:
Bit P1 verifica las posiciones 1, 3, 5 y 7, y debe ser 0 para que haya un
nmero par de 1s en este grupo.
Bit P2 verifica las posiciones 2, 3, 6 y 7 y debe ser 0 para que haya un
nmero par de 1s en este grupo.
Bit P3 verifica las posiciones 4, 5, 6 y 7 y debe ser 1 para que haya un
nmero par de 1s en este grupo.

4. Estos bits de paridad se insertan en la tabla y el resultado combinado es


0011001

Detectando y Corrigiendo un
Error con Cdigo Hamming

Cada bit de paridad, junto con su grupo


correspondiente de bits debe tener una paridad
correcta.

Si hay 3 bits de paridad en una palabra, se hacen 3


chequeos de paridad.

Cada chequeo de paridad puede dar un resultado


bueno o malo.

El resultado total de todos los chequeos de


paridad indica el bit que contiene un error en
caso de existir.

1. Comenzar con el grupo verificado por P1


2.Verificar que el grupo tenga paridad correcta. Un 0
representa una verificacin correcta, un 1 representa
un error.
3. Repetir el paso 2 para cada grupo de paridad
4. El nmero binario formado por los resultados de
todas las verificaciones de paridad indica la posicin del
error en el cdigo. El primer chequeo de paridad
genera el bit menos significativo. Si todos los chequeos
son correctos, no hay error.

Ejemplo
Asuma que 0011001 es transmitido y que en
su lugar se recibe 0010001. El recibidor no
sabe que fue transmitido y debe revisar las
paridades para determinar si el cdigo es
correcto. Indique cualquier error que haya
ocurrido en la transmisin si se utiliza
paridad par.

Hacer la tabla de
posiciones

Primera verificacin de paridad:


El bit P1 verifica las posiciones 1, 3, 5 y 7. Hay 2 1s
en este grupo. La verificacin de paridad es correcta.

Segunda verificacin de paridad:


El bit P2 verifica las posiciones 2, 3, 6 y 7. Hay 2 1s
en este grupo. La verificacin de paridad es correcta.

Tercera verificacin de paridad:


El bit P3 verifica las posiciones 4, 5, 6 y 7. Hay 1 1s
en este grupo. La verificacin de paridad es
incorrecta.

1 (MSB)

0 (LSB)

Resultado: El cdigo de posicin del error es 100 (4 en binario). Esto


indica que el bit en la 4ta posicin, tiene un error. Es un 0 y debera ser un
1. Cdigo corregido: 0011001

También podría gustarte