Sunteți pe pagina 1din 2

Primero convertiré de binario a BCD sabiendo que el BCD es un decimal codificado en binario

para ellos necesitamos convertir nuestros números de decimal a binario tomando solo 4 bytes
que son los bytes que necesitamos para poder convertir nuestro máximo número decimal que
es 9 lo podremos representar en la siguiente tabla de la cual nos guiaremos :

0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 10001
Ahora para poder convertir a BCD nuestro numero binario que en este ejemplo será
(10010101)2 el cual deberemos pasar a decimal para poder convertirlo a BCD

(1 0 0 1 0 1 0 1)2
7 6 5 4 3 2 1 0
Después de haber enumerado haremos la tabla de la siguiente forma:

20 = 1
21= 2
22 = 4
23= 8
24= 16
25= 32
26 = 64
27= 128
128 64 32 16 8 4 2 1

(1 0 0 1 0 1 0 1)2
7 6 5 4 3 2 1 0 ahora asigne a cada uno de los números binarios un valor en decimal
y lo siguiente que deberé hacer ,será multiplicar por el numero, en el caso de los que son 0 al
multiplicar por el numero en cuestión este nos dará 0 y como debemos sumar no los
tomaremos en cuenta, quedaría de la siguiente forma

(128+16+4+1) = 149 por lo tanto nuestro número de binario a decimal que usaremos para este
ejercicio será 149
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
usaremos la tabla antes mencionada y cada uno de nuestros numero decimales serán
cambiados por su equivalente en BCD para el caso de 149 seria de la siguiente forma: el 1 será
cambiado por su equivalente en la tabla anterior el cual seria 0001 para el numero 4 seria 0100
y para el numero 9 es 1001 y nuestro numero BCD quedaría de la siguiente forma
000101001001
Ahora pasaremos por el proceso de detección de errores de código haming y usaremos
nuestro numero BCD 000101001001 que es 149 en binario ingresaremos la palabra de 12 bits
en código hamming para verificar su estado y si este es erróneo encontrar el bit incorrecto
para poder determinar el valor original .
ahora los bits cuya posición es potencia de dos se utilizan como bits de paridad posiciones (
1,2,4,8, 16,32,64,etc.)2n , ahora los bits del resto de las posiciones se utilizan como bits de
datos (posiciones 3,5,6,7,10,11,12,13,14,15,17,etc)

0 0 0 1 0 1 0 0 1 0 0 1 Proceder si
la palabra
Cambiamos tiene error
a 1 para la
corrección
P1 P2 D3 P4 D5 P6 D7 P8 D9 P10 D11 P12
P1 0 0 0 0 1 0 000010 1
Cambiamos impar =
tiene
a 1 para la error 0
corrección
P2 0 0 1 0 0 0 001000 1=
Cambiamos Impar 0
tiene
a 1 para la error
corrección
P4 1 0 1 0 1010 0
Es par
no tiene
error
P8 0 1 0 0 1 01001 0
Es par
no tien
error
Como paso final y obtener el dato original debemos corregir sin alterar los bits correctos en
este caso empezare de izquierda a derecha y cambiare la columna D3 de 0 a 1 para que me
quede par y así poder hacer la corrección quedaría ya corregido:
D3 D5 D7 D9 D11
1 0 0 1 0