Sunteți pe pagina 1din 18

Universidad Nacional de Quilmes

Diplomatura en Ciencia y Tecnologa

TCNICAS DIGITALES

CDIGOS BINARIOS

Introduccin
Un cdigo es una representacin de ciertos elementos a travs de la asignacin a cada una de ellos de una combinacin determinada de smbolos (combinacin llamada palabra del cdigo), elegidos dentro de un juego permitido de smbolos (juego denominado alfabeto del cdigo). Ejemplos de cdigo son: El cdigo postal, que identifica a una oficina de correos utilizando una combinacin de cifras decimales, el cdigo Morse, que identifica un carcter de texto (una letra o un nmero) utilizando una combinacin de puntos y rayas. Pero en tcnicas digitales los tipos de cdigo que resultan de mayor inters son los cdigos binarios de bloque y biunvocos. Veamos qu entendemos por estos conceptos: cdigos binarios son aquellos en que el alfabeto del cdigo lo integran solo dos caracteres, por ejemplo el cdigo Morse, nosotros utilizaremos los dgitos binarios, es decir, el 0 y el 1. cdigos de bloque son aquellos en que las distintas palabras tienen todas las mismas de smbolos. No es el caso, por ejemplo, del cdigo Morse, pero s del cdigo postal. cdigos biunivocos son aquellos para los que a cada elemento a representar le corresponde una nica palabra de cdigo (no hay sinnimos), y a cada palabra del cdigo le corresponde un nico elemento (no hay polisemia, es decir, mltiples significados).

As, un cdigo binario (de bloque y biunvoco) de 5 bits, dado que cada uno de esos bits puede ser uno cualquiera de los 2 dgitos binarios, permitir representar a un conjunto de hasta 25=32 elementos. En general, un cdigo binario de n bits permitir representar a un conjunto de hasta 2 n elementos, ya que ste es el mximo nmero de palabras diferentes que se pueden formar. Hay algunos conjuntos de elementos que suelen necesitarse codificar con cierta frecuencia en tcnicas digitales, por lo que se han realizado estudios tericos y esfuerzos de estandarizacin de cdigos para estas aplicaciones. Caen en esta descripcin los siguientes cdigos: los cdigos de cambio nico los cdigos para representar los caracteres alfanumricos los cdigos para representar los nmeros los cdigos detectores y correctores de errores.

En lo que sigue, describiremos en detalle algunos de estos cdigos siguiendo el orden ms arriba propuesto que, debe aclararse, no es un orden de importancia sino el ms indicado para una presentacin pedaggica.

Recopilacin y aportes: Ing. Alberto J. Mazzone

Pgina 1

Tcnicas Digitales Cdigos de cambio nico.

04) Cdigos Binarios

Para entender la necesidad de estos cdigos consideremos el siguiente caso: Deseamos conocer la posicin angular del eje de un motor, para lo que hemos de acoplarle un disco, solidario con el movimiento del eje, y dividido en un nmero de sectores tanto mayor cuanto mejor sea la precisin con que deseemos conocer la posicin angular. Para simplicidad de la presentacin, supongamos que slo necesitamos una indicacin grosera de la posicin angular del eje, por lo que bastar dividir el disco asociado en 4 cuadrantes. Para la representacin de estos cuadrantes podemos utilizar un cdigo binario de 2 bits (b 1 y b0) que nos ofrece las cuatro combinaciones que requerimos. Por ejemplo, podramos utilizar la siguiente tabla de correspondencia que, aunque surge muy naturalmente, ms adelante criticaremos: cuadrante b1 b0 I II III IV 0 0 1 1 0 1 0 1

Para implementar un instrumento que determine la posicin del eje en cada momento segn el cdigo propuesto, trazaremos sobre el disco dos pistas concntricas y lo dividiremos en cuatro sectores iguales, es decir en cuatro cuadrantes, como muestra la figura 1-1. En los dos segmentos de pista correspondientes a cada cuadrante colocaremos los dos bits que identifican a dicho cuadrante a razn de uno por pista, con el bit menos significativo (b 0) en la pista externa. Una forma posible de realizar esto es hacer que el disco sea de material aislante, pero que los segmentos de pista que deban contener un 1 tengan una cobertura conductora conectada a un potencial elctrico apropiado. As se ha hecho en la figura mencionada donde los sectores de pista oscuros representan a un 1, mientras que los claros representan a un 0. Para poder reconocer la posicin angular del eje se asocia al mismo un par de cepillos palpadores (uno por pista) alineados radialmente y colocados en forma fija, es decir, no solidarios con el movimiento del disco. Con esta disposicin, la presencia o ausencia de potencial elctrico en los palpadores permite determinar si los mismos se apoyan sobre una superficie electrificada (esto es, un 1) o aislante (es decir, un 0). Hay sistemas semejantes que usan otra forma de realizacin, basada en elementos optoelectrnicos, pero esta forma alternativa no ofrece diferencias conceptuales con la forma propuesta, sino slo constructivas.

Figura 1-1 Disco codificado en binario

Este sistema de medicin tiene un inconveniente asociado al hecho de que, por imperfecciones inevitables, los cepillos palpadores no estn perfectamente alineados radialmente. Esto no 2

Tcnicas Digitales

04) Cdigos Binarios

produce ningn inconveniente cuando los palpadores se encuentran apartados de las zonas de frontera entre un sector y otro. Pero, cuando estn justo sobre una de las fronteras, el error de alineamiento puede hacer que mientras uno de los palpadores repose en uno de los sectores, el otro lo haga en otro. Se dan aqu dos posibilidades: En la frontera entre los cuadrantes 1 y 2 donde slo un bit cambia al atravesar la frontera, un ligero error de alineamiento del palpador asociado a la pista que no cambia (en este caso la correspondiente al bit ms significativo) no tiene consecuencia ninguna pues se apoye en uno u otro sector su indicacin ser la misma. Por su parte, un error de alineamiento en el palpador correspondiente a la pista que cambia hace que, segn sea la pista sobre la que finalmente reposa, el cdigo ledo sea 00 01. Como estas combinaciones se corresponden a los cuadrantes I y II respectivamente, ambas son en realidad aceptables cuando los palpadores estn justo sobre la frontera entre ambos cuadrantes, por lo que el error de alineamiento no tiene consecuencias indeseables. Algo similar puede decirse en la frontera entre los cuadrantes III y IV, donde tambin slo cambia un bit al atravesar la frontera. Muy distinto es el caso cuando los palpadores se encuentran sobre la frontera entre los cuadrantes II y III, en la que ambas pistas cambian de estado, donde un error de alineamiento puede producir que ambos palpadores detecten un 1, o ambos un 0, resultados estos absolutamente inaceptables ya que 11 es la combinacin asignada al cuadrante IV, y 00 es la del cuadrante I. Algo similar ocurre en la frontera entre los cuadrantes IV y I por la posible aparicin de las combinaciones erradas 01 y 10. Se notar que, para evitar los inconvenientes mencionados, se deben representar los cuadrantes adyacentes asignndoles combinaciones que slo difieran en un nico bit, es decir, que al atravesar una frontera lo hagan siempre con un cambio nico. En nuestro ejemplo, esto se logra adoptando la siguiente tabla de correspondencia: cuadrante I II III IV b1 0 0 1 1 b0 0 1 1 0

En la figura 1-2 se aprecia el disco que implementa esta idea.

Figura 1-2 Disco codificado con cdigo de cambio nico

Los cdigos para los que la combinacin que representa a un elemento no difiere ms que en un bit de la que representa al elemento anterior se denominan cdigos continuos. Cuando en un cdigo continuo se tiene que tampoco difieren en ms de un bit las combinaciones correspondientes al primer elemento y el ltimo, se dice que se trata de un cdigo cclico. Es evidente que para codificar un eje en la forma que hemos descripto se necesita un cdigo cclico, 3

Tcnicas Digitales
y que el cdigo encontrado califica como tal.

04) Cdigos Binarios

Existe una forma sistemtica para disear cdigos continuos y cclicos para distintos nmeros de elementos. Al cdigo resultante se lo conoce como cdigo Gray o Binario Reflejado, y a l dedicaremos el prximo apartado.

Cdigos de cambio nico (Gray).


Este es un cdigo de cambio nico muy utilizado en Tcnicas Digitales, un uso ya conocido es el de los encabezamientos de los mapas de Karnaugh y otro muy difundido es el que ya hemos tratado de los encoders, que es el nombre del instrumento que se utiliza para medir ngulos en forma digital con alto grado de precisin. Referenciaremos el orden de sus componentes con el orden de los binarios naturales. S la palabra en cdigo de Gray es: . . . . . . . . 2 1 0 el referente binario ser: . . . . . . . . 2 1 0 y la expresin que los relaciona es: = +1 1 Para el ltimo bit ser: = +1 donde se toma +1 = 0, por este motivo si queremos calcular analticamente las palabras del cdigo de Gray o bien una palabra que tenga determinada posicin se puede comenzar por cualquiera de las dos puntas pues los se conocen todos. Para el proceso inverso debemos deducir la expresin = , para ello observamos la tabla y vemos que: = 0 y 0 = por lo tanto si aplicamos el operador +1 a ambos miembros de la expresin 1 obtenemos: +1 = +1 +1 Llegando as a la expresin final: = +1 2

A 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1

En la expresin 2 vemos que para conocer es necesario conocer primero +1 , por ello es necesario comenzar por el extremo de mayor peso pues +1 = 0 . Se dice que el cdigo de Gray no es ponderado. Los cdigos para los que la combinacin que representa un elemento no difiere ms que en un bit de la que representa al siguiente se llaman cdigos continuos. Cuando en un cdigo continuo tampoco difieren en ms de un bit el primer elemento y el ltimo se dice que se trata de un cdigo cclico adems por la forma de construccin se llama cdigo reflejado, veremos esto:

Tcnicas Digitales
0 00 000 0000 1 01 001 0001 11 011 0011 10 010 0010 110 0110 111 0111 101 0101 100 0100 0 1 10 11 100 101 110 111

04) Cdigos Binarios


En la primera columna se coloca los dos bits del sistema binario; luego se traza la lnea de simetra, y respetando esa simetra se escribe bajo la lnea los valores de la izquierda, a la parte de arriba se la antepone un 0 y a la de abajo un 1, quedando as el cdigo de Gray de 2 bits, repitiendo esta operacin un par de veces llegamos hasta el cdigo de Gray de cuatro bits. En la quinta columna se coloc la correspondiente relacin binaria de la posicin de cada palabra. Una propiedad muy importante de este cdigo es que las palabras que estn a la misma distancia de la lnea de simetra tampoco difieren en ms de un bit, esto permite formar sucesiones de palabras de un solo cambio de cualquier nmero par de componentes. El pasaje analtico de la posicin binaria al cdigo de Gray se hace mediante la expresin 1 , donde la funcin ExOr se realiza entre los bits encerrados entre llaves (buscaremos el cdigo correspondiente a la posicin binaria 1011):
1 1 1 0

1100 1000 1101 1001 1111 1010 1110 1011 1010 1100

01 10 01 11 El representante de Gray en la posicin 1011 es 1110

1011 1101 1001 1110 1000 1111 El pasaje analtico del cdigo de Gray a la posicin binaria se hace mediante la expresin 2 , donde la funcin ExOr se realiza entre los bits encerrados entre llaves (buscaremos la posicin binaria correspondiente al cdigo de Gray 0110)
0 1 0 0

00 01 11 00 El cdigo de gray 0110 corresponde a la posicin binaria 0100.

Cdigos para representar caracteres alfanumricos.


Cdigo ASCII de 7 bits

Tcnicas Digitales

04) Cdigos Binarios

b 6b 5 b 4 b3b2b1bO 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

000

001

010 SP ! # $ % & ( ) * + , . I

011 0 1 2 3 4 5 6 7 8 9 : ; < = > ?

100 @ A B C D E F G H I J K L M N O

101 P Q R S T U V W X Y Z [ \ ] _

110 ` a b c d e f g g h i J k l m n o

111 P q r r s t u v w w x Y z { I } DEL

NUL DLE SOH DCl STX DC2 ETX DC3 EQT DC4 ENQ NAK ACK SYN BEL ETB BS HT LF VT FF CR SO SI CAN EM SUB ESC FS GS RS US

Las ltimas 6 columnas corresponden a caracteres de texto, entre ellos el espacio en blanco (SP o space) y el carcter borrado (DEL o delete) y el subrayado (_). Adems, existen dos columnas con elementos que no son caracteres de texto, sino rdenes que: afectan a la impresin, como LF (Iine feed o avance de lnea), CR (carriage return o retorno de carro) y BS (backspace o retroceso de un espacio). controlan el traspaso de la informacin cuando este cdigo es usado para transferir informacin entre dos unidades separadas, como EOT (end of transmission o fin de transmisin), ACK (acknowledge o acuse de recibo de la transmisin sin error) y NAK (negative acknowledge o acuse de recibo de la transmisin con error). Se notar que el cdigo ASCII est bien preparado para el idioma ingls, pero carece de los smbolos empleados en otros idiomas, inclusive si nos limitamos a considerar los idiomas europeos occidentales. As, carece de nuestra ee, de las vocales acentuadas, de la u con diresis y de la apertura de los signos de admiracin e interrogacin, pero tambin de otros smbolos corrientes en los lenguajes europeos occidentales tales como , etc. Por eso cuando fue adoptado por la Organizacin Internacional de Estndares (Norma ISO 646) se le previeron "variantes nacionales" segn las cuales algunas combinaciones poco usadas del cdigo ASCII original se podan asignar a otros caracteres distintos a los previstos por el ASCII, dependiendo del lenguaje a utilizar. Sin embargo, la prctica demostr los inconvenientes del as limitado carcter internacional del cdigo y se encontr preferible posibilitar esas combinaciones adicionales agregando un nuevo bit al cdigo, lo que dio lugar 6

Tcnicas Digitales
a los as llamados cdigos ASCII extendidos de 8bits.

04) Cdigos Binarios

Cdigos para representar los nmeros.


Los cdigos para representar nmeros presentan varias alternativas de acuerdo al tipo de nmero a representar, a la precisin deseada, las operaciones a llevar a cabo, etc. Los cdigos utilizados para representar a los nmeros decimales se basan en representar separadamente cada uno de los dgitos del nmero decimal. Estos se llaman Decimales Codificados en Binario, (BCD). Para representar nmeros se utilizan los siguientes cdigos. a) b) c) d) Magnitudes binarias. (Naturales + 0). Enteros binarios. (Positivos, 0 y negativos). Reales binarios. (Fraccionarios). Decimales codificados en binario. (BCD).

Cdigos para representar magnitudes binarias (Natural).


Se representa a la magnitud con la misma combinacin de ceros y unos que se escribe esa magnitud y se completa el bloque con ceros. S el bloque tiene un formato de n bits se pueden representar magnitudes que van de 0 a 2 1.

Cdigos para representar binarios enteros.


Los nmeros binarios enteros tienen varias formas de representacin, las ms utilizadas son: a) b) c) d) Cdigo Signo y magnitud. Cdigo Complemento a 1. Cdigo complemento a 2. Cdigo Binario desplazado

Cdigo Signo y magnitud.

Nmero Codificacin +7 +6 +5 +4 +3 +111 +110 +101 +100 +11 0111 0110 0101 0100 0011
7

Tcnicas Digitales +2 +1 +10 +1 0 0010 0001 0000 1000 -1 -2 -3 -4 -5 -6 -7 -1 -10 -11 -100 -101 -110 -111 1001 1010 1011 1100 1101 1110 1111 4

04) Cdigos Binarios

Se reserva un dgito para codificar el signo (0 para el + y 1 para el-), y con los 1 restantes se representa al nmero binario. El rango de representacin es de (21 1) al (21 1) tiene doble representacin para el 0.

Cdigo Complemento a 1.
Se define el complemento a 1 en un formato de n dgitos a la diferencia entre la mxima magnitud representada por el bloque (2 1) y el nmero a complementar, por ejemplo, en un bloque de 4 dgitos el complemento a 1 de 101 es: 1111 101 1010 Se define como Cdigo complemento a 1 al cdigo donde se representan los nmeros positivos en formato n-1, y los negativos con el complemento a 1 del positivo del que corresponde.

Nmero Codificacin +7 +6 +5 +4 +3 +111 +110 +101 +100 +11 0111 0110 0101 0100 0011
8

Tcnicas Digitales +2 +1 +10 +1 0 0010 0001 0000 1111 -1 -2 -3 -4 -5 -6 -7 -1 -10 -11 -100 -101 -110 -111 1110 1101 1100 1011 1010 1001 1000

04) Cdigos Binarios


La definicin de complemento a 1 nos indica que la forma prctica obtener el complemento a uno de un nmero a codificar es tomar la representacin del nmero positivo que corresponde y luego invertir todos sus bits. El rango de representacin es de 21 1 a 21 1 S bien este cdigo no reserva ningn bit para el signo el bit ms significativo nos indica el signo del nmero. Tiene doble representacin del 0. No tiene caractersticas destacadas y se utiliza como paso intermedio para obtener el complemento a 2 de un nmero en los circuitos restadores de magnitudes.

Cdigo Complemento a 2.
Se define el complemento a 2 en un formato de n dgitos a la diferencia entre la mxima magnitud representada por el bloque ms 1, es decir: 2 ,por ejemplo, en un bloque de 4 dgitos el complemento a 2 de 101 es: 10000 101 1011 Se define como Cdigo complemento a 2 al cdigo donde se representan los nmeros positivos en formato n-1, y los negativos con el complemento a 2 del positivo del que corresponde.

Nmero Codificacin +7 +6 +5 +111 +110 +101 0111 0110 0101


9

Tcnicas Digitales +4 +3 +2 +1 0 -1 -2 -3 -4 -5 -6 -7 +100 +11 +10 +1 0 -1 -10 -11 -100 -101 -110 -111 0100 0011 0010 0001 0000 1111 1110 1101 1100 1011 1010 1001 1000

04) Cdigos Binarios


La definicin de complemento a 2 nos indica que la forma prctica obtener el complemento a uno de un nmero a codificar es tomar la representacin del nmero positivo que corresponde y copiar hasta el primer 1, y luego invertir todos los bits restantes. El rango de representacin es de 21 a 2 1 1 Como en el cdigo complemento a 1 este cdigo no reserva ningn bit para el signo el bit ms significativo nos indica el signo del nmero. No tiene doble representacin del 0. Su principal ventaja es que al sumar y restar representaciones del cdigo se obtiene el resultado en el mismo cdigo, utilizando las mismas reglas que las de sumas de magnitudes binarias aunque el resultado se evalu en otra forma.

-8 -1000

Codificacin en binario desplazado.


En un formato de n bits se obtiene la representacin sumando a los nmeros 2 1 . El rango de representacin es: (21 ) 2 1 1 El resultado de la suma nunca es negativo, por lo tanto es siempre una magnitud. Una ventaja de este cdigo es que permite hacer comparaciones entre enteros como si fuesen magnitudes. Otra ventaja es que si se invierte el bit ms significativo se convierte en cdigo complemento a 2.

Nmero Codificacin +7 +6 +5 +111 +110 +101


10

1111 1110 1101

Tcnicas Digitales +4 +3 +2 +1 0 -1 -2 -3 -4 -5 -6 -7 -8 +100 +11 +10 +1 0 -1 -10 -11 -100 -101 -110 -111 -1000 1100 1011 1010 1001 1000 0111 0110 0101 0100 0011 0010 0001 0000

04) Cdigos Binarios

Cdigos para representar nmeros reales binarios.


Cdigo signo y magnitud con coma fija.

Este cdigo divide al bloque en 3 partes, la primera de un bit para representar el signo, 0 para el + y 1 para el-. Dada su poca practicidad no es casi utilizada, para estas representaciones se prefiere utilizar las del tipo notacin cientfica.

Cdigos para nmeros reales binarios en notacin cientfica.


Los nmeros reales se suelen codificar en una forma denominada coma flotante (o tambin, punto flotante o notacin cientfica) consistente en representar los nmeros de la siguiente manera: 11

Tcnicas Digitales
donde: SgM x Bexp

04) Cdigos Binarios

Sg es el signo del nmero, es decir+ o M es la llamada mantisa del nmero B es la base del sistema de numeracin empleado exp es un exponente (un nmero entero) M x Bexp es la magnitud del nmero Esta representacin es muy utilizada en clculos cientficos donde, por ejemplo, el nmero 745,38 puede representarse como -74538x10-2. Esta representacin no es nica, porque tambin puede escribirse el mismo nmero, entre otras posibilidades, como -7,4538x102 y como 0,74538x103. Dado que no es deseable tener mltiples representaciones, en los cdigos de coma flotante se retiene slo una, llamada normalizada. Las representaciones normalizadas suelen ser, segn el cdigo empleado, aquella en que la mantisa es totalmente fraccionaria (como en 0,74538x103) o aquella en que slo tiene un dgito entero (como en -7,4538x102). Los nmeros reales que se utilizan normalmente en los sistemas electrnicos son los binarios, y no los decimales, y suelen ser representados por conjuntos de 32 64 bits. Este nmero de bits se reparte entre los tres elementos a representar, es decir: signo, mantisa y exponente, ya que la base es implcitamente 2 (como excepcin merecen citarse algunas computadoras IBM en que la base es 16, pero no consideraremos este caso). Esta reparticin se denomina divisin en campos, y suele hacerse de la siguiente forma: Signo Exponente Mantisa

El campo del signo ocupa slo el bit ms significativo, y normalmente se representa con un 0 el signo +, y con un 1 el signo -. El campo del exponente ocupa un cierto nmero de bits inmediatamente a continuacin del campo del bit de signo, y dado que el exponente es un nmero entero (es decir, tiene su propio signo) generalmente se lo representa en binario desplazado. Se observar que del nmero de bits asignado al exponente dependen los nmeros extremos que el cdigo permite representar, es decir, aquellos de mxima magnitud y mnima magnitud. El campo de la mantisa ocupa los bits menos significativos y, de acuerdo a la normalizacin adoptada, ser totalmente fraccionaria o tendr un nico bit entero (que ser obviamente un 1). Se observar que del nmero de bits asignado a la mantisa depende la precisin con que puede expresarse el nmero. Consideremos como ejemplo el siguiente caso posible: utilizar un total de 32 bits distribuidos de la siguiente manera: 1 bit para el signo (0 para positivo y 1 para negativo) que simbolizaremos como S. 8 bits para el campo del exponente, el que se representar por consiguiente con un exceso de 27=128 unidades, por lo que el exponente podr valer entre -27=-128 y +27--1=+127. Denominaremos E a la magnitud binaria de 8 bits contenida en dicho campo (igual al exponente con un exceso de 128). E estar comprendida entre 0 y 255. El exponente ser, entonces, exp=E-128 23 bits para el campo de la mantisa que, adoptando la norma de que tenga un 1 como nico entero, ste puede darse por implcito y se puede emplear la totalidad de esos 23 bits para la parte fraccionaria (tcnica denominada del 1 oculto). De esta forma, el rango de la mantisa va desde 1,000 ... (con 23 ceros detrs de la coma decimal) hasta 1,111... (con 23 unos detrs de la coma decimal); es decir, exactamente desde 1 hasta 2-2-23. Llamaremos F al contenido del 12

Tcnicas Digitales

04) Cdigos Binarios

campo de la mantisa que representa, de acuerdo a lo dicho, a la parte fraccionara de la misma. Es decir que la mantisa ser, entonces, M=1,F Por todo ello, una combinacin dada de cdigo tiene el siguiente formato:
S E M

El cual representa al nmero:

1 1, ecuaci 2128 Escriba aqu la n.

Se notar en la expresin anterior que el signo est representado por un multiplicador que vale 1 si S=0 y -1 si S=1. Lamentablemente, con este cdigo no se puede representar al 0 (ya que la magnitud ms chica que puede representar es 2-128), ni nmeros con magnitud mayor a 2127x (2-2-23) 2128.

Norma IEEE.
Existe una norma internacional del Institute of Electrical and Electronic Engineers (IEEE 754) que est basada en el cdigo que acabamos de describir como ejemplo, pero que tiene las siguientes mejoras: permite representar al nmero 0 permite representar tambin a nmeros muy pequeos, que no podran representarse en forma normalizada, hacindolo en una forma llamada desnormalizada . permite representar al concepto de infinito permite representar elementos que no son un nmero (NAN o Not A Number), caracterstica de utilidad en ciertas aplicaciones, las que no abordaremos. La norma logra estas mejoras sacrificando muy levemente el rango disponible para el exponente, que de -128 a + 127 que tena en el ejemplo, pasa a ser de -126 a + 127. Esto es debido a que al exponente, aunque se lo sigue representando en binario desplazado, se lo desplaza 127 unidades y no 128, y adems se reserva para las citadas mejoras los casos en que el campo del exponente tiene todos sus bits en 0 o todos en 1, es decir E=0 y E=255. De esta forma, quedan slo las otras combinaciones para los nmeros normalizados (E comprendido entre 1 y 254 ambos inclusive, lo que teniendo en cuenta el mencionado exceso de 127 lleva al citado rango para el exponente entre -126 y + 127). Las diferentes posibilidades del cdigo se muestran en el siguiente cuadro:

S 01 01 01 01 01

E 0 0 1E254 255 255

F 0 0 0 0 0

representa a 0 (-1 ) x0,Fx2 (-1) x1,Fx2 (-1)Sx NAN


S S -126 E-127

comentario 0 nmeros desnormalizados nmeros normalizados no es un nmero

13

Tcnicas Digitales

04) Cdigos Binarios

De esta tabla quizs slo requiere de una particular explicacin el rengln correspondiente a los nmeros desnornalizados. Estos nmeros permiten representar nmeros ms pequeos (en magnitud) que el ms pequeo normalizado. Para esos casos, reconocidos porque el campo E tiene todos sus bits en 0, no se emplea un 1 oculto, sino que la parte entera implcita de la mantisa es el 0. Adems, para estos nmeros el exponente es fijo e igual a -126, como seala la tabla anterior. La explicacin del valor particular de este exponente es por la necesidad de que, para que haya una cierta continuidad en los nmeros representados, la menor de las magnitudes normalizadas (2.-126) debera ser escasamente mayor que la mayor de las desnormalizadas (que es 0, 1111111...x2-126) lo que se cumple gracias a la apropiada eleccin del exponente fijo de estos ltimos. Ntese tambin cmo los nmeros desnormalizados permiten representar nmeros de magnitud muy pequea; as, mientras el menor nmero positivo representable en forma normalizada es el +2-126, el menor nmero positivo representable en forma desnormalizada es el +2-149 (resultado del producto +2-126x2-23).Se observar tambin que la representacin del 0 puede considerarse como un caso particular de la representacin de un nmero desnormalizado en que F=0. Aclaremos lo dicho con un ejemplo. Ejemplo 1-2 a) Cmo se representara en el cdigo IEEE de 32 bits el nmero binario -1100,1 b) Cmo se representara en dicho cdigo el nmero binario 0,000000101 c) A que nmero representa en dicho cdigo la palabra 00000000000001100000000000000000 Solucin a) al nmero solicitado, para llevarlo a forma normalizada, se le debe correr la coma tres lugares a la izquierda, quedando con: signo exponente +3 mantisa 1,1001 Entonces resulta que: el bit de signo es un 1. el exponente se debe representar por +3 desplazado en 127 unidades, es decir-por la magnitud 130, que en binario y con 8 bits se escribe 10000010. la fraccin, luego de suprimir el 1 oculto y agregar a la derecha los ceros necesarios para completar los 23 bits, queda 10010000000000000000000 Es decir que, finalmente, la palabra que representa al -1100,1 es 11000001010010000000000000000000 b) al nmero solicitado, para llevarlo a forma normalizada, se le debe correr la coma siete lugares a la derecha, quedando con: signo + exponente-7 mantisa 1,01 14

Tcnicas Digitales
Entonces resulta que: el bit de signo es un 0.

04) Cdigos Binarios

el exponente se debe representar por -7 desplazado en 127 unidades, es decir por la magnitud 120, que en binario y con 8 bits se escribe 01111000 la fraccin, luego de suprimir el 1 oculto y agregar a la derecha los ceros necesarios para completar los 23 bits, queda 01000000000000000000000 Por lo tanto, la palabra que representa al 0,000000101 es 00111100001000000000000000000000 c) de acuerdo al bit de signo se trata de un nmero positivo, y como los 8 bits siguientes son ceros se trata de un nmero desnormalizado que, por consiguiente, tiene un exponente de 2 -126 y su fraccin no tiene un 1 oculto sino que su parte entera es 0, es decir, resulta 0,00001100000000000000000. Componiendo los tres elementos y tras correr la coma 6 lugares hacia la derecha para mayor claridad, queda como resultado final (expresado en decimal por comodidad) 3x2-J32 El IEEE tambin ha normalizado un cdigo para representar los nmeros en coma flotante con 64 bits, similar al descripto pero que emplea 11 bits para el exponente (con un desplazamiento de 1023 unidades) y 52 bits para la mantisa (nuevamente, slo la fraccin con el 1 entero oculto), obteniendo as, simultneamente, mayor rango y mejor precisin que en el caso del cdigo con 32 bits.

Cdigos binarios para nmeros decimales


Como ya se dijera, los cdigos para nmeros decimales codificados en binario (cdigos BCD o Binary Coded Decimal) se basan en representar por separado en un cierto cdigo binario a los diferentes dgitos que componen un nmero decimal. As, el nmero decimal 37 se representa como decimal por dos combinaciones de dgitos binarios: la que represente al 3 y la que represente al 7. Existen varias formas de representar a los dgitos decimales mediante un cdigo de alfabeto binario. Todas ellas requieren un mnimo de 4 bits para ello, ya que 3 bits resultan insuficientes pues slo pueden codificar a 8 elementos. Los cdigos BCD ms usuales son los siguientes: Natural Aiken Exceso 3 7 segmentos

A continuacin veremos con cierto detalle las caractersticas y aplicaciones de cada uno de ellos.

BCD Natural
En este cdigo, cada uno de los diez dgitos decimales se representa directa y naturalmente por su nmero binario correspondiente expresado con 4 bits, segn la tabla de correspondencia que se da ms adelante. Una caracterstica deseable de un cdigo BCD es que sea pesado, porque ello facilita la realizacin de operaciones aritmticas. Por cdigo BCD pesado se entiende un cdigo en el que a las diferentes posiciones de los bits se le puede asignar un peso, y el dgito decimal a que corresponde cada combinacin de bits se puede obtener sumando los pesos de las posiciones en que la combinacin presenta un 1. Dado que en el cdigo BCD Natural los dgitos se representan 15

Tcnicas Digitales

04) Cdigos Binarios

por su binario, las distintas posiciones tienen un peso que es una potencia de 2. Los respectivos pesos, comenzando por el bit ms significativo, son 8, 4, 2 Y 1, por lo que este cdigo tambin suele llamarse cdigo 8421 (lase ocho cuatro dos uno). En la tabla mencionada se ha colocado el peso que corresponde a cada posicin. El cdigo BCD Natural es el cdigo BCD de uso ms difundido en aplicaciones generales.
b3 0 1 2 3 4 5 6 7 8
9

b2 4 0 0 0 0 1 1 1 1 0 0

bl 2 0 0 1 1 0 0 1 1 0 0

b0 1 0 1 0 0 0 1 0 1 0 1

8 0 0 0 0 0 0 0 0 1 1

BCD Aiken
De acuerdo a lo visto ms arriba, si se escriben los primeros 16 nmeros binarios (incluyendo el 0), el cdigo BCD Natural le asigna a cada uno de los 10 primeros de estos nmeros binarios, en forma ordenada, los dgitos decimales del O al 9. Aiken, el inventor del cdigo que veremos ahora, en contraste, y buscando una simetra, concibi un cdigo en el que a los primeros 5 nmeros binarios de la lista de 16 les hizo corresponder los dgitos 0 al 4 en forma ordenada, mientras que a los dgitos 5 al 9 se le asignaron los ltimos 5 nmeros de la lista. La tabla de correspondencia siguiente muestra el cdigo resultante, el que resulta tambin un cdigo pesado, aunque de pesos 2421, como el lector podr confirmar fcilmente verificando su validez para todos los dgitos. La caracterstica ms ventajosa del cdigo BCD Aiken con relacin al BCD Natural es que, por la forma simtrica en que se tomaron los nmeros binarios para asignarlos a los diferentes dgitos decimales, resulta ser un cdigo autocomplementario. Se define como cdigo autocomplementario a un cdigo BCD en el que la representacin del complemento a 9 de un dgito se hace fcilmente cambiando, b3 b 2 b1 b0 en la combinacin de bits de ese dgito, todos los unos por ceros y 2 4 2 1 viceversa. 0 0 0 0 0 1 0 0 0 1 Complementar a 9 un cierto dgito es una operacin que consiste 2 0 0 1 0 en encontrar el dgito que resulta de restar de 9 el dgito dado. As, por ejemplo, el complemento a 9 de 3 es 6, siendo tambin cierta 3 0 0 1 1 la recproca. Ntese que las representaciones del 3 y del 6 en este 4 0 1 0 0 cdigose caracterizan por el hecho de que una tiene ceros donde la 5 1 0 1 1 otra tiene unos, y viceversa. Esta caracterstica no la tiene el BCD 6 1 1 0 0 Natural, y es ventajosa para realizar ciertas operaciones como 7 1 1 0 1 conteo regresivo o resta de nmeros decimales. 8 1 1 1 0 9 1 1 1 1 Pese a la ventaja de ser autocompIementario, el cdigo Aiken es mucho menos usado que el BCD Natural. " 16

Tcnicas Digitales BCD Exceso 3


b3 0 1 2 3 4 5 6 7 8 9 8 0 0 0 0 0 1 1 1 1 1 b2 4 0 1 1 1 1 0 0 0 0 1 b1 2 1 0 0 1 1 0 0 1 1 0 b0 1 1 0 1 0 1 0 1 0 1 0

04) Cdigos Binarios

De acuerdo a lo visto ms arriba, si se escriben los primeros 16 nmeros binarios (incluyendo el 0), el cdigo BCD Natural le asigna a cada uno de los 10 primeros de estos nmeros binarios, en forma ordenada, los dgitos decimales del 0 al 9, mientras que el Aiken utiliza, en bsqueda de una simetra con la que logra la deseable caracterstica de ser autocomplementario, los primeros 5 y los ltimos 5 nmeros binarios de la lista de 16. Pero existe otra forma de lograr la simetra, y es tomar los 10 nmeros centrales de la lista, descartando los primeros 3 y los ltimos 3, y asignarlos ordenadamente a los diez dgitos decimales. Como de esta manera se utilizan los binarios a partir del 3, este cdigo es conocido como BCD Exceso 3, y la tabla de correspondencia que lo define es la de la de la izquierda.

En dicha tabla el lector podr verificar que se trata tambin de un cdigo autocomplementario. El cdigo Exceso 3 no es un cdigo pesado, pero pertenece a la categora de los cdigos analticos (de la que los cdigos pesados son un caso particular) en los que a las diferentes posiciones de los bits se le puede asignar un peso, y el dgito decimal a que corresponde cada combinacin de bits se puede obtener sumando los pesos de las posiciones en que la combinacin presenta un 1, y restando una cantidad denominada exceso o desplazamiento. Con esta definicin, es evidente que el cdigo Exceso 3 es analtico, con pesos 8,4,2 Y 1, Y con exceso 3. Al igual que el cdigo Aiken, el cdigo BCD Exceso 3 es mucho menos usado que el BCD Natural a pesar de la ventaja de ser autocomplementario.

Cdigo 7 segmentos.
Este cdigo tiene una aplicacin muy especfica y es la vinculada a los exhibidores de 7 segmentos con que habitualmente se exhiben los dgitos decimales en relojes digitales, calculadoras, etc. Estos exhibidores tienen 7 segmentos que pueden volverse luminosos (u opacos) por comando de una seal elctrica, y que tienen una disposicin tal que segn sean los segmentos que estn encendidos o apagados (u opacos o transparentes) se muestra un dgito decimal. La tabla de correspondencia de este cdigo, y el esquema del exhibidor, son los siguientes: a 1 0 1 1 0 1 X 1 1 1 b 1 1 1 1 1 0 0 1 1 1 c 1 1 0 1 1 1 1 1 1 1 d 1 0 1 1 0 1 1 0 1 X e 1 0 1 0 0 0 1 0 1 0 f 1 0 0 0 1 1 1 X 1 1 g 0 0 1 1 1 1 1 O 1 1

0 1 2 3 4 5 6 7 8 9

En la tabla se observa, en los renglones correspondientes a los dgitos 6, 7 y 9, sendos casilleros que contienen una X en vez de un 0 o un 1. Esta X significa "0 1 indistintamente", ya que hay dos 17

Tcnicas Digitales
formas posibles de representar a los nmeros mencionados. A saber:

04) Cdigos Binarios

Los cdigos detectores y correctores de errores.


Estos cdigos estn desarrollados en el apunte 05-2 Paridad y Hamming.

18

S-ar putea să vă placă și