Sunteți pe pagina 1din 26

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

1. CODIFICACIN DE NMEROS Y TIPOS DE CDIGOS . . . . . . . . . . . . . . . . . . . . (2) 2. CIRCUITOS CONVERSORES DE CDIGO . . . . . . . . . . . . . . . . . . . . . . . . . . (12) 3. PARIDAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (17) 4. CDIGOS PARA DETECCIN Y CORRECCIN DE ERRORES . . . . . . . . . (20) 5. EJERCICIOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (25)

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-1

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

La disponibilidad de una gran variedad de cdigos para los mismos elementos discretos de informacin da como resultados el uso de cdigos diferentes para distintos sistemas digitales. Es necesario, en ocasiones, usar la salida de un sistema como entrada de otro, por lo que debe utilizarse un circuito de conversin entre los dos sistemas, si cada uno usa diferentes cdigos para la misma informacin. De esta forma un conversor de cdigo es un circuito que hace compatibles dos sistemas a pesar de que ambos tengan diferente cdigo binario.

1. CODIFICACIN DE NMEROS Y TIPOS DE CDIGOS


En los sistema digitales la informacin numrica est generalmente representada en el sistema numrico binario (u otro cdigo binario relacionado). En los captulos previos, se ha hecho nfasis en la importancia y utilizacin del sistema binario, sin embargo, tambin son importantes otros sistemas numricos, principalmente el octal, hexadecimal y decimal codificado en binario (BCD).

1.1.

Sistema numrico binario

El sistema numrico binario es un sistema posicional, en el cual cada dgito binario (bit) lleva un cierto peso basado en su posicin relativa al punto binario (separacin de la parte entera y la fraccionaria). Cualquier nmero binario puede convertirse a su equivalente decimal sumando juntos los pesos de las diferentes posiciones en el nmero binario que contienen un 1. Por ejemplo: 1 24 1 +23 0 1 +21 1 +20 binario = 16 + 8 + 2 + 1 = 2710 (decimal) El mismo mtodo se emplea para nmeros binarios que contienen una parte fraccional:

Ejemplo 1.

Aplicar el mtodo anterior para verificar las siguientes conversiones: a) b) c) 1001102 = 3810 0.1100012 = 0.76562510 11110011.01012 = 243.31510

Se tienen diferentes maneras para convertir un nmero decimal a su representacin equivalente en el sistema binario. Un mtodo, que es conveniente para nmeros pequeos, es el reverso del proceso descrito previamente. El nmero decimal se expresa simplemente como una suma de potencias de 2 y luego se escriben unos y ceros asociados a las posiciones apropiadas de los bits. Por ejemplo:

Otro ejemplo:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-2

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

Para nmeros decimales mayores, el mtodo anterior es laborioso. Un mtodo ms conveniente, consiste en la conversin separada de las partes entera y fraccionaria. Por ejemplo, para el nmero decimal 25.375 , el cual se convirti previamente, el primer paso es la conversin de la parte entera 25. Esto se hace dividiendo repetidamente 25 por 2 y escribiendo los residuos despus de cada divisin, hasta obtener un cociente de ceros, como se muestra en la figura adjunta: La conversin deseada se obtiene escribiendo los residuos como se muestra en la figura anterior. Obsrvese que el primer residuo es el bit menos significativo (bms) y el ltimo el Bit Ms Significativo (BMS). La parte fraccionaria del nmero (0.375), se convierte a binario multiplicndola repetidamente por 2 y anotando cualquier acarreo en la posicin de los enteros, como se muestra en la figura adjunta: Ntese que las multiplicaciones continan hasta obtener un producto de 1.00 (la mayora de las veces esto no ocurre y el proceso se termina hasta alcanzar el nmero de bits deseado), puesto que las multiplicaciones posteriores resultan igual a cero. Obsrvese que el primer acarreo se escribe en la primera posicin a la derecha del punto binario. Finalmente, la conversin completa para 25.375 se escribe como la combinacin de las conversiones entera y fraccionaria: 25.37510 = 11001.0112 EJEMPLO 2. Aplicar este mtodo para comprobar la siguiente conversin: 632.8510 = 1001111000.110112

1.2.

Sistema numrico octal

El sistema numrico octal es muy importante en el trabajo con computadoras digitales. El sistema octal tiene una base de ocho, significando que tiene ocho dgitos posibles: 0, 1, 2, 3, 4, 5, 6 y 7. As, cada dgito de un nmero octal tiene los siguientes pesos: -----84 83 82 81 80 . 8-1 8-2 8-3 8-4 8-5 -----

punto octal Un nmero octal puede convertirse fcilmente a su equivalente decimal, multiplicando cada dgito octal por su peso posicional. Por ejemplo:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-3

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

Otro ejemplo:

Los mtodos para convertir un nmero decimal a su equivalente octal son los mismos como los usados para convertir de decimal a binario. Para convertir un entero decimal a octal, se divide progresivamente el nmero decimal por 8, anotando los residuos despus de cada divisin. Los residuos representan los dgitos del nmero octal, con el primer residuo como el menos significativo (bms). Como ejemplo, convertir 26610 a octal: Las fracciones decimales se convierten a octal multiplicando progresivamente por 8 y escribiendo los acarreos en la posicin despus del punto octal. Por ejemplo, 0.38 se convierte a octal como sigue: Note que el primer acarreo el bit ms significativo (BMS) de la fraccin. Se puede lograr una mayor precisin continuando el proceso para obtener ms dgitos octales. Es til cuando se convierte un nmero decimal relativamente grande a binario, convertirlo primero a octal. El nmero octal puede entonces convertirse a binario. Este mtodo es generalmente ms rpido que la conversin directa decimal a binario, debido a la simpleza de la conversin octal a binario. La principal ventaja del sistema numrico octal es la facilidad con la cual puede hacerse la conversin entre nmeros binarios y octales. La conversin desde octal a binario se ejecuta convirtiendo cada dgito octal a su equivalente binario de 3 bits. Los ocho dgitos posibles se convierten como se indica en la siguiente tabla:
Dgito octal Equivalente binario 0 000 1 001 2 010 3 011 4 100 5 101 6 110 7 111

Usando estos equivalentes, cualquier nmero octal se convierte a binario por conversin individual de cada dgito. Por ejemplo, se puede pasar 4728 a binario como sigue:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-4

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

9
100

9
111

9
010

Por consiguiente, el octal 472 es equivalente al binario 100111010. Como otro ejemplo, considrese la conversin de 54.318 a binario:
5 4 . 3 1

9
101

9
100

9
.

9
011

9
001

As, 54.318 = 101100.0110012 La conversin de binario a octal es simplemente el inverso del proceso anterior. Los dgitos binarios se agrupan de tres en tres a cada lado del punto binario, aadiendo ceros en cualquier lado cuando ello sea necesario para completar un grupo de tres. Entonces cada grupo de tres bits se convierte a su equivalente octal. Como ilustracin, considrese la conversin de 11010.1011 a octal
011 010 . 101 100

9
3

9
2

9
.

9
5

9
4

Note que se aadieron ceros a cada lado para completar los grupos de a tres. As, la conversin deseada es 32.548.

1.3.

Sistema numrico hexadecimal

El sistema numrico hexadecimal usa la base 16. As, tiene 16 smbolos digitales posibles. Usa los dgitos 0-9 ms las letras A, B, C, D, E y F como los 16 smbolos digitales.
Hexadecimal
0 1 2 3 4 5 6 7 8 9 A B C D E F

Decimal
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Binario
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

La tabla anterior muestra las relaciones entre los sistemas numricos hexadecimal, decimal y binario. Note que cada dgito hexadecimal representa a un grupo de cuatro dgitos binarios. Algunas computadoras utilizan el sistema hexadecimal para propsitos de exposicin en preferencia al octal. Las conversiones entre hexadecimal y binario se hacen exactamente de la misma manera como entre octal y binario, excepto que se usan grupos de 4 bits. En el siguiente ejemplo se ilustra la conversin de binario a hexadecimal y de hexadecimal a binario:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-5

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

1.4.

Cdigos

Cuando se representa nmeros, letras o palabras por un grupo especial de smbolos, se llama codificacin y al grupo de smbolos se le denomina un cdigo. Probablemente uno de los cdigos ms familiares es el cdigo Morse, en el cual las letras del alfabeto se representan por series de puntos y rayas. Ya se ha visto que cualquier nmero decimal puede representarse por un nmero binario equivalente. Puede pensarse que el grupo de ceros y unos en el nmero binario es un cdigo que representa al decimal. Cuando se representa un nmero decimal por su nmero binario equivalente, se llama codificacin binaria directa. Los sistemas binarios usan todos alguna forma de nmeros binarios para sus operaciones internas pero el mundo externo es de naturaleza decimal. Esto significa que se deben ejecutar conversiones frecuentes entre los sistemas decimal y binario. Hemos visto que las conversiones entre decimal y binario pueden llegar a ser largas y complicadas para nmeros grandes. por esta razn, algunas veces se usan otros medios para codificar los nmeros decimales que combinan algunas caractersticas de los sistemas decimal y binario.

1.4.1 Cdigo decimal codificado en binario (BCD) (Binary Coded Decimal)


Si cada dgito de un nmero decimal se representa por su equivalente binario, esto produce un cdigo llamado decimal codificado en binario (abreviado BCD por sus siglas en ingls Binary Coded Decimal). Puesto que un dgito decimal puede ser tan grande como 9, se requieren 4 bits para codificar cada dgito (el cdigo binario para 9 es 1001). Para ilustrar el cdigo BCD, tomemos un nmero decimal tal como 874. Cada dgito se cambia a su equivalente binario como sigue:
8 7 4

9
1000

9
0111

9
0100

Como otro ejemplo, cambiemos 94.3 a su representacin en cdigo BCD:


9 4 . 3

9
1001

9
0100

9
.

9
0011

Una vez ms, cada dgito decimal se cambia a su equivalente binario directo. Note que siempre se usan 4 bits para cada dgito.

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-6

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

El cdigo BCD, entonces representa cada dgito del nmero decimal por un nmero binario de 4 bits. Claramente, slo los nmeros binarios de 4 bits desde 0000 hasta 1001 se usan. El cdigo BCD no usa los nmeros 1010, 1011, 1100, 1101, 1110 y 1111. En otras palabras, slo 10 de los 16 grupos codificados posibles de 4 bits se usan. Si cualesquiera de estos nmeros prohibidos de 4 bits alguna vez se presentan en una mquina que usa el cdigo BCD, generalmente indica que ha ocurrido un error. EJEMPLO 3. Convertir el nmero BCD 0110100000111001 a su equivalente decimal: SOLUCIN
0110 1000 0011 1001

9
6

9
8

9
3

9
9

EJEMPLO 4. Convierta el nmero BCD 011111000001 a su equivalente decimal:


0111 7 1100 0001 1

grupo de cdigo prohibido indica error en el nmero BCD

Al hacer una comparacin entre BCD y binario comn, es importante darse cuenta que un nmero BCD no es lo mismo que un nmero binario comn. Un cdigo binario comn toma el nmero decimal completo y lo representa en binario, mientras que el cdigo BCD convierte cada dgito decimal a binario en forma individual. Para ilustrar, tome el nmero 137 y compare las representaciones binaria comn y codificada:

El cdigo BCD requiere 12 bits mientras que el cdigo binario comn requiere slo 8 bits para representar 137. Es siempre verdadero que el cdigo BCD para un nmero decimal dado requiere ms bits para cdigo que el cdigo binario comn. Esto es porque BCD no usa todos los grupos posibles de 4 bits, como se seal antes y es por consiguiente algo ineficiente. La principal ventaja del cdigo BCD es la facilidad relativa para convertir a y desde decimal. Slo se requiere recordar los grupos codificados de 4 bits para los dgitos decimales del 0 al 9. Esta facilidad de conversin es especialmente importante desde el punto de vista de circuitos, porque en un sistema digital son los circuitos lgicos los que ejecutan las conversiones a y desde decimal. BCD se usa en mquinas digitales siempre y cuando se aplique informacin digital, ya sea como entradas o mostradas como salidas. Los voltmetros digitales, contadores de frecuencia y relojes digitales usan todos BCD, porque despliegan la informacin de salida en decimal. Las calculadoras electrnicas usan BCD porque los nmeros de entrada vienen en decimal va el teclado y los nmeros de salida son mostrados en decimal. BCD no se usa a menudo en computadoras digitales modernas de alta velocidad por dos buenas razones. Primero, como ya fue sealado, el cdigo BCD para un nmero decimal dado requiere ms bits que el cdigo binario directo y es por consiguiente menos eficiente. Esto es importante en computadoras digitales porque el nmeros de lugares en memoria donde estos bits pueden ser almacenados es limitado. Segundo, los procesos aritmticos para nmeros representados en cdigo BCD son ms complicados que en binario ordinario y requieren as de circuitera ms compleja. La circuitera ms compleja contribuye a una disminucin en la velocidad a la cual tienen lugar las operaciones aritmticas. Las calculadoras que usan BCD son, por consiguiente, considerablemente ms lentas en su operacin que las computadoras.
R. ESPINOSA R. y P. FUENTES R.

CDIGOS-7

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

1.4.2. Cdigo exceso-3 El cdigo exceso-3 est relacionado con el cdigo BCD y usado a veces en lugar de l porque posee ventajas en ciertas operaciones aritmticas. El cdigo exceso-3 para un nmero decimal se ejecuta de la misma manera que en BCD excepto que se aade 3 a cada dgito decimal antes de codificarlo en binario. Por ejemplo, para codificar el nmero decimal 4 en el cdigo exceso-3, debemos primero aadir 3 para obtener 7. Luego el 7 se codifica en cdigo binario equivalente de 4 bits para obtener 0111. Como otro ejemplo, convirtamos 46 a su representacin en cdigo exceso-3: 4 +3 6 +3 aada 3 a cada dgito convierta a cdigo binario de 4 bits

S)Q S)Q

7 9 0111 1001

La siguiente tabla muestra las listas para las representaciones BCD y exceso-3 para los dgitos decimales. Note que ambos cdigos usan slo 10 de los 16 posibles grupos codificados de 4 bits. El cdigo exceso-3, sin embargo, no usa los mismos grupos codificados. Para exceso-3, los grupos codificados no vlidos son 0000, 0001, 0010, 1101, 1110 y 1111.
Decimal 0 1 2 3 4 5 6 7 8 9 BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 Exceso-3 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100

1.4.3. Cdigo Gray El cdigo Gray pertenece a una clase de cdigos llamados cdigos de cambios mnimo, en los cuales slo cambia un bit en el grupo codificado cuando se va de un paso al siguiente. El cdigo Gray es un cdigo no ponderado, significando que las posiciones de los bits en los grupos codificados no tienen un peso especfico asignado. Debido a esto, el cdigo Gray no es apropiado para operaciones aritmticas, pero encuentra aplicaciones en dispositivos de entrada/salida y en algunos tipos de convertidores analgicos a digital. La siguiente tabla muestra la representacin en cdigo Gray para los nmeros decimales 0 al 15, junto con el cdigo binario directo. Si examinamos los grupos codificados Gray para cada nmero decimal, puede verse que al ir desde cualquier nmero decimal al siguiente, slo un bit del cdigo Gray cambia. Por ejemplo, al ir desde 3 a 4, el cdigo Gray cambia de 0010 a 0110, con solo el segundo bit desde la izquierda experimentando cambio. Yendo de 14 a 15 los bits del cdigo Gray cambian de 1001 a 1000, con la sola variacin en el ltimo bit. Esta es la principal caracterstica del cdigo Gray. Compare esto con el cdigo binario en el cual de uno a todos los bits cambian al pasar de un nmero al siguiente.

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-8

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

Decimal
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Cdigo binario
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Cdigo Gray
0000 0001 0110 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000

El cdigo Gray se usa a menudo donde otros cdigos tales como el binario, pudieran producir resultados errneos o ambiguos durante esas transiciones en las cuales ms de un bit del cdigo est cambiando. Usando el cdigo binario, por ejemplo, y yendo de 0111 a 1000 requiere que todos los cuatro bits cambien simultneamente. Dependiendo del dispositivo o circuito que est generando los bits, puede haber una diferencia significativa en los tiempos de transicin de los diferentes bits. Si esto es as, las transiciones de 0111 a 1000 pudiera producir uno o ms estados intermedios. Por ejemplo, si el bit ms significativo cambia ms rpido que el resto, ocurrirn las siguientes transiciones:
0111 1111 1000

6 6 6

decimal cdigo errneo decimal 8

La ocurrencia de 1111 es slo momentnea pero pudiera concebiblemente producir una operacin errnea de los elementos que estn siendo controlados por los bits. Obviamente, usando el cdigo Gray se eliminara este problema, puesto que slo ocurre el cambio de un bit por transicin y no puede ocurrir una carrera. Cualquier nmero binario puede convertirse a su representacin en cdigo Gray como sigue: 1. El primer bit del cdigo Gray es el mismo como el primer bit del nmero binario. 2. El segundo bit del cdigo Gray es igual a la operacin O EXCLUSIVA del primer y segundo bits del nmero binario; esto es, ser 1 si estos bits del cdigo binario son diferentes y 0 si son los mismos. 3. El tercer bit del cdigo Gray es igual a la O EXCLUSIVA del segundo y tercer bits del nmero binario y as sucesivamente. Para ilustrar esto, convirtamos el binario 10110 al cdigo Gray:

9`9`9`9`9
1 1 1 0 1

1 0 1 1 0

Cdigo binario Cdigo Gray

El primer bit del cdigo Gray es el mismo como el primer bit del cdigo binario. El primero y segundo bits del cdigo binario son diferentes, dando un 1 para el segundo bit Gray. El segundo y tercer bits del nmero binario son diferentes, dando un 1 para el tercer bit gray. El tercero y cuarto bits del nmero binario son lo mismo, as que el cuarto bit Gray es 0. Finalmente el cuarto y quinto bits binarios son diferentes, dando un quinto bit Gray de 1.

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-9

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

Otro ejemplo es como sigue: 1 0 0 1 1 0 0 1

9`9`9`9`9`9`9`9

binario Gray

1 1 0 1 0 1 0 1

Para convertir de Gray a binario se requiere el procedimiento opuesto dado previamente. 1. El primer bit binario es el mismo que el primer bit Gray. 2. Si el segundo bit Gray es 0, el segundo bit binario es el mismo como el primero; si el segundo bit Gray es 1, el segundo bit binario es el inverso del primer bit binario. 3. El paso 2 se repite para cada bit sucesivo. Para ilustrar esto, convirtamos 1101 de Gray a binario:

9 9 9 9 16 06 06 1

1 1 0 1

Gray binario

El primer bit Gray es 1, as que el primer bit binario se escribe como un 1. El segundo bit Gray es un 1, as que el segundo bit binario se hace un 0 (inverso del primer bit binario). El tercer bit Gray es un 0, as que el tercer bit binario se hace un 0 (lo mismo como el segundo bit binario). El cuarto bit gray es 1, haciendo el cuarto bit un 1 (inverso del tercer bit binario). Este proceso puede ser visto de otra manera: Cada bit binario (exceptuando el primero) puede obtenerse tomando la O EXCLUSIVA del bit correspondiente del cdigo Gray y el bit binario previo. Finalmente, en las siguientes tablas, se presentan los cdigos Gray y los ponderados exceso-3, 8 4-2-1 y Biquinario, referidos al cdigo BCD: CDIGO
DEC
8 4

BCD
2 1 8

GRAY
4 2 1 8

EXCESO 3
4 2 1

0 1 2 3 4 5 6 7 8 9 10 | 15

0 0 0 0 0 0 0 0 1 1 X | X

0 0 0 0 1 1 1 1 0 0 X | X

0 0 1 1 0 0 1 1 0 0 X | X

0 1 0 1 0 1 0 1 0 1 X | X

0 0 0 0 0 0 0 0 1 1 X | X

0 0 0 0 1 1 1 1 1 1 X | X

0 0 1 1 1 1 0 0 0 0 X | X

0 1 1 0 0 1 1 0 0 1 X | X

0 0 0 0 0 1 1 1 1 1 X | X

0 1 1 1 1 0 0 0 0 1 X | X

1 0 0 1 1 0 0 1 1 0 X | X

1 0 1 0 1 0 1 0 1 0 X | X

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-10

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

CDIGO DEC
8 0 1 2 3 4 5 6 7 8 9 10 0 0 0 0 0 0 0 0 1 1

BCD
4 0 0 0 0 1 1 1 1 0 0 2 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 0 1 8 0 0 0 0 0 1 1 1 1 1

8 4 -2 -1
4 0 1 1 1 1 0 0 0 0 1 -2 0 0 1 0 0 1 1 0 0 1 -1 0 0 0 1 0 1 0 1 0 1 5 0 0 0 0 0 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0

BIQUINARIO
4 0 0 0 0 1 0 0 0 0 1 3 0 0 0 1 0 0 0 0 1 0 2 0 0 1 0 0 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0

!
x

!
x

!
x

!
x

!
x

!
x

!
x

!
x

!
x

!
x

!
x

!
x

!
x

!
x

!
x

15

En las tablas anteriores, se indican los trminos indiferentes (prohibidos). 1.4.4. Cdigos alfanumricos Hemos estudiado varios cdigos que se usan para representar datos numricos, esto es, nmeros. Muchos sistemas digitales, tales como la computadora, usan tambin datos alfabticos (letras) y caracteres especiales (tales como smbolos de puntuacin y matemticos) en adicin a nmeros. Tales cdigos se llaman cdigos alfanumricos. La siguiente tabla muestra dos de los diferentes cdigos alfanumricos que estn en uso corriente. El cdigo interno de 6 bits se usa a menudo en computadoras para representar internamente caracteres alfanumricos.
Carcter
A B C D E

6-bit Cdigo interno


010 001 010 010 010 011 010 100 010 101

7-bit Cdigo ASCII


100 0001 100 0010 100 0011 100 0100 100 0101

V W X Y Z 0 1 2 3

110 101 110 110 110 111 111 000 111 001 000 000 000 001 000 010 000 011

101 0110 101 0111 101 1000 101 1001 101 1010 011 0000 011 0001 011 0010 011 0011

!
7 8 9 Espacio . ( | / , =

000 111 001 000 001 001 110 000 011 011 111 100 | 110 001 111 011 001 011

011 0111 011 1000 011 1001 010 0000 010 1110 101 1000 | 010 1111 010 1100 011 1101

El cdigo interno de 6 bits puede representar hasta 64 caracteres diferentes, ya que 26=64. La necesidad de representar ms de 64 caracteres, en ciertas aplicaciones, da lugar a cdigos de 7 y 8
R. ESPINOSA R. y P. FUENTES R.

CDIGOS-11

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

bits. Uno de tales cdigos es el ASCII (Cdigo Estndar Americano para Intercambio de Informacin American Standard Code for Information Interchange), el cual se usa en la transmisin de informacin digital. El ASCII mostrado en la tabla tiene 7 bits, lo cual indica que puede representar 27=128 caracteres diferentes. Slo algunos de stos se muestran en la tabla.

CIRCUITOS CONVERSORES DE CDIGO.

Para convertir el cdigo binario A al cdigo binario B, las lneas de entrada deben dar una combinacin de bits de los elementos, tal como se especifica por el cdigo A y las lneas de salida deben generar la correspondiente combinacin de bits del cdigo B. EJEMPLO 1: Realizar un circuito mnimo conversor de cdigo de BCD a GRAY para cuatro variables de entrada A, B, C, D, utilizando inversores, una compuerta O y compuertas No O. Considere las condiciones irrelevantes. SOLUCIN a) Tabla funcional:
DEC
0 1 2 3 4 5 6 7 8 9 10 | 15

BCD A
0 0 0 0 0 0 0 0 1 1

GRAY D
0 1 0 1 0 1 0 1 0 1

B
0 0 0 0 1 1 1 1 0 0

C
0 0 1 1 0 0 1 1 0 0

G3
0 0 0 0 0 0 0 0 1 1 x | x

G2
0 0 0 0 1 1 1 1 1 1 x | x

G1
0 0 1 1 1 1 0 0 0 0 x | x

G0
0 1 1 0 0 1 1 0 0 1 x | x

b)

Variables de Conmutacin: Como el logigrama deber realizarse con compuertas No-O, las funciones de conmutacin a la salida del conversor, debern expresarse como producto de maxitrminos:

c)

Minimizacin de las funciones de conmutacin: Reduciendo por el mtodo de Karnaugh, se obtiene:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-12

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

Las funciones mnimas son:

d)

Logigrama:

EJEMPLO 2. Realice un circuito mnimo conversor de cdigo exceso 3 (BCD) a 8,4,-2-1, utilizando slo inversores.

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-13

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

SOLUCIN a) Tabla funcional:

CDIGO
DEC E1 0 1 2 3 4 5 6 7 8 9 10 ! 15 0 0 0 0 0 1 1 1 1 1 exceso 3 E2 0 1 1 1 1 0 0 0 0 1 E1 1 0 0 1 1 0 0 1 1 0 E0 1 0 1 0 1 0 1 0 1 0 mi 3 4 5 6 7 8 9 10 11 12 0-2 ! 13-15 8 4 -2 -1 A 0 0 0 0 0 1 1 1 1 1 x | x B 0 1 1 1 1 0 0 0 0 1 x | x C 0 1 1 0 0 1 1 0 0 1 x | x D 0 1 0 1 0 1 0 1 0 1 x | x

Obsrvese que el cdigo exceso-3 slo puede generarse hasta el 9 decimal, puesto que se toma como base el cdigo BCD. Asimismo, los minitrminos de entrada para el cdigo 8,4,-2-1, son los que genera el cdigo exceso-3, los cuales se indican en la columna mi. Tambin, los trminos indiferentes corresponden a aquellos que no aparecen a la salida del cdigo exceso-3, puesto que no se generarn. b) Funciones de Conmutacin: Las funciones de conmutacin a la salida del cdigo 8,4,-2,-1, pueden expresarse como suma de minitrminos, ya que no existe una condicin previa:

c)

Reduccin de las funciones de conmutacin: Utilizando los mapas K para la minimizacin de las funciones de conmutacin, se obtiene:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-14

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

d)

Funciones de conmutacin minimizadas: De los mapas K anteriores, se obtiene:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-15

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

e)

Logigrama:

PARIDAD

La transmisin de datos binarios de una localizacin a otra es un lugar comn en todos los sistemas digitales. Se presentan cuatro ejemplos de esto: 1. 2. 3. 4. Salida de datos binarios desde una computadora y que estn registrndose en cinta magntica. Transmisin de datos binarios por lnea telefnica, tal como entre una computadora y una consola remota. Un nmero se toma de la memoria de la computadora y se coloca en la unidad aritmtica, en donde se aade a otro nmero. La suma es luego regresada a la memoria. Informacin almacenada en un disco flexible se leen para cargarse en la memoria de una computadora personal. Lo anterior se ejemplifica en la figura adjunta: El proceso de transferir datos est sujeto a error, aun cuando el equipo moderno ha sido diseado para reducir la probabilidad de error. Sin embargo, an errores relativamente infrecuentes pueden causar resultados intiles, as que es deseable detectarlos siempre que ello sea posible. Uno de los esquemas usados ms ampliamente para la deteccin de errores es el mtodo de paridad. Un bit de paridad es un bit extra que se agrega a un grupo codificado en el cual se transmite de una localizacin a otra. El bit de paridad se hace ya sea 0 1, dependiendo del nmero de unos que estn contenidos en el grupo codificado. Se usan dos mtodos diferentes. En el mtodo de paridad par el valor del bit de paridad se escoge de tal manera que el nmero total de unos en el grupo codificado (incluyendo el bit de paridad) sea un nmero par. Supngase por ejemplo, que el grupo codificado es 10110. El grupo codificado tiene tres unos. Por tanto, se aade un bit de paridad de 1 para hacer el nmero total de unos un valor par. El nuevo grupo codificado, incluyendo el bit de paridad es:
CDIGOS-16

R. ESPINOSA R. y P. FUENTES R.

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

101101

bit de paridad aadido

Si el grupo codificado contiene un nmero par de unos inicialmente, el bit de paridad recibe un valor de cero. Por ejemplo, si el cdigo es 10100, el bit de paridad asignado sera 0, as que el nuevo cdigo, incluyendo el bit de paridad sera 101000. El mtodo de paridad impar se usa exactamente de la misma manera, excepto que el bit de paridad se escoge de tal modo que el nmero total de unos (incluyendo el bit de paridad) sea un nmero impar. Por ejemplo, para el grupo codificado 01100, el bit de paridad asignado sera un 1. Para el grupo 11010, el bit de paridad sera un 0. Sin importar si se usa paridad par o impar, el bit de paridad se aade a la palabra codificada y es transmitido como parte de la palabra codificada. La figura adjunta muestra como se usa del mtodo de paridad: Los bits del grupo codificado estn representados por A, B y C. Estos bits pudieran venir de las salidas de un conversor de cdigo. Se alimentan entonces a un circuito generador de paridad, el cual es un circuito lgico que examina los bits de entrada y produce un bit de paridad de salida del valor correcto. El bit de paridad se transmite junto con los bits de entrada, como lo muestra la figura adjunta. La siguiente tabla muestra la forma de obtener los bits de paridad para el cdigo binario de 3 bits. Pp y Pi, son las funciones resultantes de aplicar paridad par e impar, respectivamente.
DEC 0 1 2 3 4 5 6 7 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 Pp 0 1 1 0 1 0 0 1 Pi 1 0 0 1 0 1 1 0

Las funciones de conmutacin correspondientes a los bits de verificacin son:

Tanto de la tabla como de las ecuaciones, se observa que Pp y Pi son complementarios. Reduciendo Pp por mapas K :

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-17

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

La funcin reducida es:

Como Pi es el complemento de Pp, entonces:

El logigrama de Pp junto con una posible aplicacin es: Cuando los bits transmitidos alcanzan su destino, son alimentados a un circuito comprobador de paridad, el cual es un circuito lgico que examina todos los bits para determinar si la paridad correcta est presente. En un sistema de paridad par, el comprobador de paridad generar una salida baja de error si el nmero de entradas 1 es un nmero par y una salida de error alta (indicando un error) si el nmero de entradas 1 es impar. En un sistema de paridad impar sera al contrario. Si ocurre un error en uno de los bits transmitidos, el circuito comprobador de paridad lo detectar. Por ejemplo, supongamos que los bits del grupo codificado son 0110 y que estamos usando un sistema de paridad impar. El circuito generador de paridad generar entonces un 1 para un bit de paridad, as que ser transmitido 01101. Si estos bits llegan al comprobador de paridad sin cambio, ste producir una salida 0 (ningn error). Sin embargo, si uno de los bits cambia antes de llegar al verificador de paridad (tal como 00101 en lugar de 01101), el comprobador de paridad se har alto indicando que ha ocurrido un error en la transmisin. La salida de error puede usarse para sonar una alarma, detener la operacin del sistema o activar un indicador de error.

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-18

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

Debera ser aparente que este mtodo de paridad puede detectar errores nicos pero no puede detectar errores dobles. Esto es porque un error doble no cambiar la paridad del grupo de bits, as que el verificador de paridad indicar ningn error. Tambin, este mtodo de paridad no seala al error; esto es, no determina al bit errneo. Para detectar y sealar errores dobles, debern usarse mtodos ms sofisticados, que permitan hacer correcciones. Tal es el caso del mtodo de Hamming, tratado a continuacin.

CDIGOS PARA DETECCIN Y CORRECCIN DE ERRORES

Uno de los mtodos ms empleados para detectar y corregir errores es el cdigo desarrollado por Hamming. A continuacin se presenta algunas definiciones iniciales: Distancia: La distancia en un cdigo, se define como el nmero de cambios (0 1) que existen entre un caracteres consecutivos. La distancia mnima M de un cdigo, se define como el nmero mnimo de bits en que pueden diferir dos caracteres consecutivos cualesquiera de un cdigo.

Distancia mnima:

La expresin que relaciona la distancia mnima, deteccin y correccin de errores es: M - 1 = D + C para toda C # D . . . . . . . . . . . . . . . . . . . . . . . . (1) Donde: M = Distancia mnima D = Bits errneos que se detectan C = Bits errneos que se corrigen La Tabla 1, muestra la relacin para diferentes valores de M, C y D: TABLA 1
M 0 1 2 3 4 5 D 0 0 1 2 1 3 2 4 3 2 C 0 0 0 0 1 0 1 0 1 2 Cdigo de Hamming

Considerando a: k = Nmero de bits de verificacin de paridad y M=k Entonces, la relacin entre los bits de paridad y los bits del cdigo original, est dada por la siguiente expresin: 2k - 1 = k + n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (2) donde:
R. ESPINOSA R. y P. FUENTES R.

CDIGOS-19

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

n = No. de bits del cdigo original k+n = No. de bits del nuevo cdigo La siguiente Tabla, muestra la relacin entre k y n, para algunos valores de k:
k 0 1 2 3 4 5 n 0 0 1 4 11 26 k+n 0 1 3 7 15 31

De la tabla anterior, se observa que entre ms bits de seguridad se deseen en el cdigo de inters, el nmero de bits de ste aumenta considerablemente. Para un cdigo original de cuatro bits A, B, C, D, al que le corresponden tres bits de paridad C1, C2, C3, stos se colocan en las posiciones 2n, con n=0, 1, 2; es decir, en las posiciones 1,2,4, como se muestra a continuacin:
1 C1 2 C2 3 A 4 C3 5 B 6 C 7 D

Cada bit de paridad se selecciona para generar paridad (par o impar) en las siguientes posiciones: C1 6 1,3,5,7 C2 6 2,3,6,7 C3 6 4,5,6,7 Una manera sencilla de recordar las posiciones para generar paridad de cada uno de los bits de paridad, se muestra en la siguiente tabla:
1 C1 C2 C3 1 0 0 2 0 1 0 3 1 1 0 4 0 0 1 5 1 0 1 6 0 1 1 7 1 1 1 Posicin 1, 3, 5, 7 2, 3, 6, 7 4, 5, 6, 7

Por ejemplo, si se quiere transmitir 910=10012 con paridad par, el nuevo ser:
1 C1 0 2 C2 0 3 A 1 4 C3 1 5 B 0 6 C 0 7 D 1 NUEVO CDIGO

Para C1: En las posiciones 3,5 y 7, se tienen dos UNOS, obtenindose paridad par, lo que indica que hay que colocar un 0 en la posicin 1. Para C2: En las posiciones 3, 6 y 7, se tienen dos UNOS, obtenindose paridad par, lo que indica que hay que colocar un 0 en la posicin 2.
R. ESPINOSA R. y P. FUENTES R.

CDIGOS-20

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

Para C3: En las posiciones 5, 6 y 7, se tiene un slo UNO, lo que indica que hay que colocar un 1 en la posicin 4, para obtener paridad par. EJEMPLO 3. a) Dado el cdigo exceso 3 (BCD), obtener el nuevo cdigo con distancia mnima de 3 (M=3) y disear el circuito transmisor.

Tabla funcional:
CDIGO EXCESO 3 DEC E3 0 1 2 3 4 5 6 7 8 9 10 | 15 0 0 0 0 0 1 1 1 1 1 E2 0 1 1 1 1 0 0 0 0 1 E1 1 0 0 1 1 0 0 1 1 0 E0 1 0 1 0 1 0 1 0 1 0 3 4 5 6 7 8 9 10 11 12 0-2 | 13-15 mi C1 1 1 0 1 0 1 0 1 0 0 x | x C2 0 0 1 1 0 1 0 0 1 1 x | x E3 0 0 0 0 0 1 1 1 1 1 C3 0 1 0 0 1 0 1 1 0 1 x | x E2 0 1 1 1 1 0 0 0 0 1 E1 1 0 0 1 1 0 0 1 1 0 E0 1 0 1 0 1 0 1 0 1 0 CDIGO A TRANSMITIR

b)

Funciones de conmutacin: Las funciones correspondientes a los bits de verificacin son:

c)

Reduccin por mapas K: Los mapas K para las bits de verificacin son:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-21

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

De los mapas, se obtienen las siguientes funciones reducidas:

d)

Logigrama:

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-22

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

EJEMPLO 4.

Determinar las posiciones de paridad para los bits de verificacin para k=4 (Distancia mnima igual a 4).

Sustituyendo el valor de k en la Ecuacin (1), se obtiene: 2k-1 = 24-1 = 15 = k + n Por tanto, el nmero de bits del cdigo original, n, es igual a 11. El cdigo a transmitir es de 15 bits (k+n). La posicin para determinar la paridad de los bits de verificacin se obtiene de la siguiente tabla:
1 C1 C2 C3 C4 1 0 0 0 2 0 1 0 0 3 1 1 0 0 4 0 0 1 0 5 1 0 1 0 6 0 1 1 0 7 1 1 1 0 8 0 0 0 1 9 1 0 0 1 10 0 1 0 1 11 1 1 0 1 12 0 0 1 1 13 1 0 1 1 14 0 1 1 1 15 1 1 1 1

Para C1: Se debe tener paridad par en las posiciones: 1,3,5,7,9,11,13,15 Para C2: Se debe tener paridad par en las posiciones: 2,3,5,7,10,11,14,15 Para C3: Se debe tener paridad par en las posiciones: 4,5,6,7,12,13,14,15 Para C4: Se debe tener paridad par en las posiciones: 8,9,10,11,12,13,14,15 Como los bits de verificacin deben quedar en una posicin correspondiente a una potencia de dos (1,2,4,8), entonces el cdigo a transmitir es:
1 C1 2 C2 3 X10 4 C3 5 C9 6 X8 7 X7 8 C4 9 X6 10 X5 11 X4 12 X3 13 X2 14 X1 15 X0

Donde: C1, C2, C3, C4 son los bits de verificacin y X10, X9,..., X0, corresponden al cdigo original.
R. ESPINOSA R. y P. FUENTES R.

CDIGOS-23

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

5
1. 2.

EJERCICIOS
Realice un circuito convertidor de cdigo de Gray a binario para 4 bits, de tal manera que se utilicen slo compuertas O EXCLUSIVAS. Realice los siguientes conversores de cdigo: a) De BCD a 8 4-2-1. b) De BCD a 2 4 2 1.
8 4 -2 -1 BCD A 0 1 2 3 4 5 6 7 8 9 10 | 15
NOTA: CONSIDERE LOS TRMINOS INDIFERENTES.

2421 D 0 1 0 1 0 1 0 1 0 1 W 0 0 0 0 0 1 1 1 1 1 X | X X 0 0 0 0 1 0 1 1 1 1 X | X Y 0 0 1 1 0 1 0 0 1 1 X | X Z 0 1 0 1 0 1 0 1 0 1 X | X

B 0 1 1 1 1 0 0 0 0 1

C 0 1 1 0 0 1 1 0 0 1

0 0 0 0 0 1 1 1 1 1

3.

Obtenga el diagrama lgico mnimo del conversor de cdigo de exceso 3 (BCD), a un cdigo BCD autocomplementario, cuyas combinaciones 0,1,2,3 y 4 estn excedidas en 2 y las restantes tienen un exceso en 4. Obtenga el mayor nmero de relaciones exclusivas posibles para realizar el diagrama lgico.

4. 5. 6.

Disee el circuito que permita transmitir el cdigo excedido en 3 (BCD) con distancia mnima de 3. Considere las condiciones indiferentes. Se desea transmitir el No. 5710 empleando la tcnica de Hamming. Cul es el cdigo deseado? Si se recibe el siguiente mensaje: 110000011101101 Determine si existe error y en que posicin se encuentra.

7.

Codificar el carcter de informacin 01101110101 de acuerdo con el cdigo de Hamming de 15 bits. Si existe, determinar cul bit est equivocado en el carcter con cdigo de Hamming 1100111. Dado el siguiente diagrama a bloques de un circuito combinacional:
CDIGOS-24

8.

9.

R. ESPINOSA R. y P. FUENTES R.

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

NOTA: A, E3 y C1 son las variables de mayor peso binario

a) b) c)

Obtenga las salidas mnimas del bloque (1) como suma de productos. Obtenga las salidas mnimas del bloque (2) como suma de productos. Realice el logigrama de a) y b) utilizando slo inversores y compuertas No Y.

NOTA: Considere los trminos indiferentes.

10.

Dado el siguiente diagrama a bloques de un circuito combinatorio:


NOTA: A, H1 y E3 son las variables de mayor peso binario

a)

Obtenga las salidas mnimas del bloque (1) como un producto de sumas. Obtenga las salidas mnimas del bloque (2) como un producto de sumas. Realice el logigrama de a) y b) utilizando slo inversores y compuertas No O.

b)

c)

NOTA: Considere los trminos indiferentes.

11.

Dado el cdigo 8 4-2-1 (BCD), determine el nuevo cdigo de Hamming con distancia mnima de 3 y obtenga el logigrama reducido utilizando slo inversores y compuertas No O. Considere los trminos indiferentes. Disee un circuito mnimo de segundo orden para convertir una entrada decimal codificada en binario a una salida biquinaria (0 de 2 de 7). Como se indica en la Figura (a), deber contar con 4 entradas y siete salidas. Los cdigos para la entrada y la salida correspondientes a los dgitos decimales se dan en la Figura (b). Se puede suponer que las seis combinaciones posibles de entrada no anotadas en ella (correspondientes a 10-15) nunca se podrn producir.

12.

Figura (a)

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-25

CDIGOS Y CIRCUITOS CONVERSORES DE CDIGO

BCD DGITO D8 0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 1 1 D4 0 0 0 0 1 1 1 1 0 0 D2 0 0 1 1 0 0 1 1 0 0 D1 0 1 0 1 0 1 0 1 0 1 B5 0 0 0 0 0 1 1 1 1 1 B0 1 1 1 1 1 0 0 0 0 0

BIQUINARIO Q4 0 0 0 0 1 0 0 0 0 1 Q3 0 0 0 1 0 0 0 0 1 0 Q2 0 0 1 0 0 0 0 1 0 0 Q1 0 1 0 0 0 0 1 0 0 0 Q0 1 0 0 0 0 1 0 0 0 0

Figura (b)

R. ESPINOSA R. y P. FUENTES R.

CDIGOS-26

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