DPTO. AUTOMTICA Y ELECTRNICA (DAE) REA ELECTRNICA Y TELECOMUNIC. (AEYT) NOTAS DE CLASE - CURSO DE ELECTRNICA DIGITAL
ELABORACIN REVISIN (AEYT) APROBACIN (DAE) AUTORIZACIN (FI) 1 Csar M. Rojas E. Diego Martnez Freddy Naranjo Enero - 2012
CONVERSIN DE UN NMERO BINARIO A UN NMERO BCD
1. INTRODUCCIN. Si se quiere mostrar en visualizadores de 7 segmentos el equivalente decimal de un nmero binario, se tiene que convertir antes a cdigo BCD. Aunque es posible construir un conversor tipo combinacional, se mostrar tambin la forma de hacerlo de tipo secuencial, de una forma eficiente. 2. ALGORITMO (Comparar y sumar 6) PARA CONVERSION DE BINARIO A BCD a) Se tiene un nmero binario de cuatro bits que desea convertir a BCD. b) Si el nmero es menor que (1010) 2 , no es necesario cambiar nada. c) Si el nmero es mayor a (1001) 2 se le resta (1010) 2 para obtener un dgito BCD. d) Se coloca un 1 en el dgito de las decenas en BCD, lo cual se puede considerar como la adicin de (0001 0000) 2 = (16) 10 al nmero original.
Ejemplo. a) Convertir (1100) 2 a BCD b) Nmero menor a (1010) 2 ? NO c) Nmero mayor a (1001) 2 Restar (1100) 2 - (1010) 2 = (0010) 2
Si se combinan estas operaciones en una sola, se ve que para convertir un nmero binario de cuatro bits a BCD, slo se tiene que aadir (6) 10 o (0110) 2 si el nmero es mayor o igual a 10. Esto funciona bien para binarios de cuatro bits, pero que pasa si se tienen nmeros de mayor cantidad de bts?
Si se tienen nmeros binarios de ms de cuatro bts, se desplaza la entrada, un bit a la vez, en grupos de cuatro bits, y en cada paso se le aade (0110) 2 si el resultado es mayor a (1001) 2 .
Ejemplo. Convertir el nmero (10110) 2 a BCD.
Para mejor comprensin del procedimiento, ver tabla de la figura 1.
UNIVERSIDAD AUTNOMA DE OCCIDENTE (UAO)
FACULTAD DE INGENIERA (FI) DPTO. AUTOMTICA Y ELECTRNICA (DAE) REA ELECTRNICA Y TELECOMUNIC. (AEYT) NOTAS DE CLASE - CURSO DE ELECTRNICA DIGITAL
ELABORACIN REVISIN (AEYT) APROBACIN (DAE) AUTORIZACIN (FI) 2 Csar M. Rojas E. Diego Martnez Freddy Naranjo Enero - 2012
OPERACION DECENAS UNIDADES BINARIO Entrada en binario 10110 Desplazamiento-1 a la izquierda. Bloque unidades > 9? NO 1 0110 Desplazamiento-2 a la izquierda Bloque unidades > 9? NO 10 110 Desplazamiento-3 a la izquierda Bloque unidades > 9? NO 101 10 Desplazamiento-4 a la izquierda Bloque unidades > 9? SI 1011 0 Sumar (0110) 2 1011 0110 0 Resultado de la suma 1 0001 0 Desplazamiento-5 a la izquierda Bloque unidades > 9? NO Bloque decenas > 9? NO 10 0010 Salida equivalente en BCD 2 2 Figura 1. Ilustracin de la conversin de un nmero binario de 5 bits a BCD.
Despus de cada desplazamiento, es necesario comprobar si algn bloque de las columnas Unidades o Decenas es mayor que (9) 10 . Si es as, se debe aadir (6) 10
antes de un nuevo desplazamiento. Ntese que cuando se aadi (0110) 2 , el bit de acarreo se ubic en la siguiente columna. Esto significa que se necesitan cinco bits de salida en vez de cuatro, en cada paso. Sin embargo, hay un truquito que se puede utilizar para evitar esto.
Si a un nmero binario se le desplaza una posicin a la izquierda, matemticamente que se le est haciendo?
Duplicndolo!
Si se cambia el orden de las operaciones, slo se necesitarn cuatro bits de salida. Especficamente se puede sumar 3 y duplicar, en vez de duplicar y adicionar 6, porque en ambos casos se obtiene el mismo resultado. De aqu es de donde este algoritmo obtiene su nombre. La nueva regla entonces es, desplazar la entrada, un bit a la vez, en grupos de cuatro bits, y si un dgito es cinco (0101) 2 o mayor, entonces se le adiciona (0011) 2 antes de desplazarlo de nuevo.
UNIVERSIDAD AUTNOMA DE OCCIDENTE (UAO)
FACULTAD DE INGENIERA (FI) DPTO. AUTOMTICA Y ELECTRNICA (DAE) REA ELECTRNICA Y TELECOMUNIC. (AEYT) NOTAS DE CLASE - CURSO DE ELECTRNICA DIGITAL
ELABORACIN REVISIN (AEYT) APROBACIN (DAE) AUTORIZACIN (FI) 3 Csar M. Rojas E. Diego Martnez Freddy Naranjo Enero - 2012
3. ALGORITMO (Desplazar y sumar 3) PARA CONVERSION DE BINARIO A BCD En la tabla de la figura 2, se presenta el mismo ejemplo anterior, con el algoritmo desplazar y sumar 3
OPERACION DECENAS UNIDADES NUMERO BINARIO Entrada en binario 10110 Desplazamiento-1 a la izquierda.
1 0110 Desplazamiento-2 a la izquierda. Bloque unidades 5? NO. 10 110 Desplazamiento-3 a la izquierda. Bloque unidades 5? SI. 101 10 Sumar (011) 2 101 011 10 Resultado de la suma 1000 10 Desplazamiento-4 a la izquierda. Bloque unidades 5? NO. Bloque decenas 5? NO. 1 0001 0 Desplazamiento-5 a la izquierda. Bloque unidades 5? NO Bloque decenas 5? NO 10 0010 Salida equivalente en BCD 2 2 Figura 2. Conversin de Binario de 5 bits a BCD usando el algoritmo desplazar y sumar 3.
El mismo procedimiento podr ser aplicado para nmeros de cualquier cantidad de bits. Se mantendr la condicin de desplazar y adicionar 3, hasta que todos los bits de la entrada hayan sido desplazados. Por ejemplo, para un nmero de 8 bits, se necesitan hacer 8 desplazamientos.
Ahora, la pregunta es cmo implementar el circuito conversor? En primer lugar, se necesita disear como se crea conveniente, un bloque con cuatro bits de entrada y cuatro de salida que realice la operacin de "sumar 3 si la entrada es igual o mayor que 5". Se crea un macro con este bloque y se dispone como se indica en la figura 3, para obtener el convertidor de un nmero Binario a un nmero BCD.
UNIVERSIDAD AUTNOMA DE OCCIDENTE (UAO)
FACULTAD DE INGENIERA (FI) DPTO. AUTOMTICA Y ELECTRNICA (DAE) REA ELECTRNICA Y TELECOMUNIC. (AEYT) NOTAS DE CLASE - CURSO DE ELECTRNICA DIGITAL
ELABORACIN REVISIN (AEYT) APROBACIN (DAE) AUTORIZACIN (FI) 4 Csar M. Rojas E. Diego Martnez Freddy Naranjo Enero - 2012
Figura 3. Diagrama combinacional de un convertidor de Binario a BCD
Esta disposicin diagonal es lo que hace que los bits se desplacen a travs del algoritmo como se describi anteriormente.
Ahora se puede disponer de los dgitos decimales individuales, para lo que sea necesario, como por ejemplo mostrarlos en visualizadores de 7 segmentos.