Abril - 2018 CODIFICACIÓN BINARIA CODIFICACIÓN • En un ambiente de sistemas digitales se denomina codificación a la asignación de un significado a una configuración de bits. • Al modelar problemas es usual encontrar variables que pueden tomar múltiples valores, se denomina codificación al proceso de convertir esas variables en señales binarias. La elección adecuada del código puede conducir a redes lógicas más simples. Ejemplo • Consideremos, el estado de un semáforo: éste puede tomar uno de tres valores: verde, amarillo o rojo. • Una posible codificación es considerar cada color como una señal binaria; así si la variable color toma valor rojo, estará en nivel alto la señal rojo y el resto de las señales (la verde y amarilla) serán ceros. • Otra posibilidad es emplear dos bits para representar las tres situaciones que son posibles; ya que con dos bits pueden simbolizarse., en binario, cuatro casos Códigos numéricos • Los más empleados son aquellos usados para representar números decimales. • El código representa los dígitos decimales por una secuencia de símbolos binarios. Código BCD El código ponderado más empleado es el código 8421 un tipo de código BCD, que representa a los dígitos decimales por secuencias de bits en sistema binario. BCD es un acrónimo de Binary Coded Decimal es decir, decimal codificado en binario. Tabla del código BCD
Cada secuencia de 4 bits es una palabra del código. Nótese
que a cada dígito decimal se le asocia una secuencia de 4 bits. Códigos no válidos • Sabemos que, con cuatro dígitos, se pueden representar dieciséis números (desde 0000 hasta 1111), pero en el código 8421, sólo se usan diez de ellos. • Las seis combinaciones (1010, 1011, 1100, 1101, 1110 y 1111) no son válidas en el código BCD 8421. • Para expresar cualquier número decimal en BCD, simplemente reemplace cada dígito decimal por el apropiado código de 4 bits. Ejemplo Para representar el número decimal 12 se requieren 8 bits, o dos palabras de código:
Propuestos: Convertir a BCD los siguientes números
decimales: (a)85 (b)98 (c)170 (d)9673 Suma en BCD La suma es la más importante de las operaciones aritméticas. Pasos: 1. Sumar los dos números BCD utilizando las reglas de la suma binaria. 2. Si una suma de 4 bits es igual o menor que 9, es un número BCD válido. 3. Si una suma de 4 bits es mayor que 9, o si genera un acarreo en el grupo de 4 bits, el resultado no es válido. En este caso, se suma 6 (0110) al grupo de 4 bits para saltar así los seis estados no válidos y pasar al código 8421. Si se genera un acarreo al sumar 6, éste se suma al grupo de 4 bits siguiente. Ejemplos • Suma con resultados válidos
• Suma sin acarreo con resultado no válido
• Sumas con resultado no válido por el acarreo • Sumas con resultado no válido por el acarreo Ejercicios 1.- Convertir a BCD los siguientes números decimales: a) 85 b) 98 c) 170 d) 9673 2.- Convertir a Decimal los siguientes códigos BCD: a) 001101010001 b) 10000010001001110110 3.- Sumar en BCD: a) 234+471 b) 01001000 + 00110100 Códigos Digitales – Código Gray El código Gray es un código sin pesos y no aritmético; es decir, no existen pesos específicos asignados a las posiciones de los bits. La característica más importante del código Gray es que sólo varía un bit de un código al siguiente. Esta propiedad es importante en muchas aplicaciones, tales como los codificadores de eje de posición, en los que la susceptibilidad de error aumenta con el número de cambios de bit entre números adyacentes dentro de una secuencia. Código Gray para palabras de largo tres
Observe que, en este código, sólo cambia un bit entre los
sucesivos números. Por ejemplo, para pasar del decimal 3 al 4 Código Gray de cuatro bits Conversión de código binario a código Gray • El bit más significativo (el que está más a la izquierda, MSB) en el código Gray es el mismo que el correspondiente MSB del número binario. • De izquierda a derecha, sumar cada par adyacente de los bits en código binario para obtener el siguiente bit en código Gray. Los acarreos deben descartarse. Ejemplo Convertir el número en código Gray 11011 a binario:
El número binario es 10010
Conversión de código Gray a código binario • El bit más significativo en el código binario es el mismo que el que corresponde al bit del código Gray. • A cada bit del código binario generado se le suma el bit en código Gray de la siguiente posición adyacente. No tenemos en cuenta los acarreos. Conversión de código Gray a código binario • Convertir a binario el código Gray 10101111
El número Gray es 11001010
Ejercicios • Convertir a código Gray el número binario 101101. • Convertir a binario el código Gray 100111. En las aplicaciones electromecánicas de los sistemas digitales tales como herramientas mecánicas, sistemas de frenado para automóviles y fotocopiadoras a veces es necesario que un sensor de entrada produzca un valor digital que indique una posición mecánica. Estos sistemas utilizan el código Gray, que pertenece a una clase de códigos en los cuales solo cambia un bit del grupo de código en la transición de una etapa a la otra. Las posiciones de los bits en los grupos de código no tienen un valor determinado. CÓDIGOS ALFANUMÉRICOS Códigos alfanuméricos Son códigos que representan números y caracteres alfabéticos (letras). Sin embargo, la mayoría de estos códigos también representan otros caracteres tales como símbolos y distintas instrucciones necesarias para la transferencia de información. Como mínimo, un código alfanumérico debe poder representar los diez dígitos decimales y las 26 letras del alfabeto, es decir, un total de 36 elementos. Esta cantidad requiere seis bits, se tiene un total de 64 combinaciones, por lo que 28 de ellas no se utilizan. Código ASCII El American Standard Code for Information Interchange (ASCII, código estándar americano para el intercambio de información) es un código alfanumérico universalmente aceptado, que se usa en la mayoría de las computadoras y otros equipos electrónicos. La mayor parte de los teclados de computadora se estandarizan de acuerdo con el código ASCII, y cuando se pulsa una letra, un número o un comando de control, es el código ASCII el que se introduce en la computadora Los caracteres de control ASCII
Los primeros treinta y dos códigos
de la tabla ASCII representan los caracteres de control. Estos se utilizan para permitir a dispositivos, tales como una computadora o una impresora, que se comuniquen entre sí cuando transfieren información y datos. Caracteres del código ASCII extendido Además de los 128 caracteres ASCII estándar, existen 128 caracteres adicionales que fueron adoptados por IBM para utilizar en sus computadoras personales (PC). Debido a la popularidad del PC, estos caracteres especiales del código ASCII extendido se usan también en otras aplicaciones distintas de los PC, por lo que se ha convertido en un estándar no oficial. Caracteres del código ASCII extendido El código ASCII extendido está formado por caracteres que pertenecen a las siguiente categorías generales: 1. Caracteres alfabéticos no ingleses. 2. Símbolos de moneda no ingleses. 3. Letras griegas 4. Símbolos matemáticos