Вы находитесь на странице: 1из 32

SISTEMAS Y CDIGOS NUMRICOS

SISTEMAS Y CDIGOS NUMRICOS

UNIDAD I OPERACIN DE CIRCUITOS COMBINATORIOS


Orgenes y esbozo histrico.
En la actualidad es cada vez ms difcil no encontrarse da con da con un producto de la tecnologa digital.
Ciertamente, el ejemplo ms representativo de estos es la computadora digital, sin embargo, lejos de ser el nico
este pertenece a una amplia gama de productos que cada da se renueva, se perfecciona y crece. Los ejemplos
actuales van desde computadoras digitales y calculadoras de bolsillo hasta video juegos, relojes digitales,
medidores, controladores industriales, electrodomsticos, aparatos de comunicacin, etc. Algunos ejemplos de
ellos se ilustran en la Figura 1.

Figura 1. Tecnologa digital.

Aunque los productos derivados del diseo digital realizan funciones sorprendentes, la idea bsica de esta rama
de la electrnica es extremadamente simple.
El Diseo Digital o diseo lgico puede ser definido como la ciencia de organizar conjuntos de interruptores
(switches) para procesar informacin de manera predecible y coherente.
El avance actual de la electrnica conjuga los avances tanto del diseo digital como del analgico, estas dos
ramas de la electrnica ofrecen soluciones para diversos problemas, sin embargo, cada vez ms las soluciones
digitales invaden el campo que anteriormente era exclusivo de las soluciones analgicas. Sin embargo, en la
mayora de los casos, la mejor solucin conjuga elementos analgicos tanto como digitales. A continuacin se
presenta un breve resumen del desarrollo de la electrnica digital y los principales eventos que contribuyeron
al desarrollo actual.
1854

George Boole publica su artculo An investigation of the laws of thought... en donde sienta las bases
del lgebra Booleana, sin embargo, para la poca, el artculo no tuvo trascendencia prctica.

1938

Claude Shannon sistematiza el trabajo anterior de George Boole, dando origen a los primeros
dispositivos de conmutacin diseados y probados mediante mtodos sistematizados. (Ya en 1930 los
Laboratorios Bell haban desarrollado una calculadora usando relevadores).

1940

Alan Touring construye Colossus, primera computadora de tubos de vaco (mantenida en secreto
casi por 40 aos).

1946

John Mauchly y J. Presper Eckert (U.S.A. Pensilvania) construyen la ENIAC usando tubos de vaco
(18,000 tubos, 500,000 switches, 150 kilowatts) capaz de hacer 5000 sumas por segundo.

1947

Invencin del transistor, con el consiguiente ahorro de espacio, potencia de consumo y costo de los
sistemas electrnicos.

1950-1960 Tercera generacin de computadoras construidas en base a circuitos integrados.


1971

La compaa INTEL lanza al mercado el primer microprocesador (el 4004) de 4 bits. A partir de aqu
se comienzan a generalizar los sistemas digitales complejos basados en microprocesador para cubrir
una extensa gama de aplicaciones que va desde los electrodomsticos hasta controladores industriales.

Pgina 2

SISTEMAS Y CDIGOS NUMRICOS

A su vez la tecnologa de microprocesadores y computadoras digitales no ha dejado de perfeccionarse da con


da, los siguientes son algunos eventos significativos ms recientes:
1972

INTEL produce el primer microprocesador de 8 bits (el 8008).

1973

INTEL lanza el 8080 (adoptado por IBM para la PC). MOTOROLA lanza el 6800.

1975

ZILOG lanza el Z80 y MOTOROLA produce el 6502 (adoptado por APPLE) (El 6501 y 6502 fueron
comercializados en $20 y $25 dlares cuando el microprocesador ms barato vala unos $180 dlares.

1979

Se producen las primeras microcomputadoras de un solo chip (microcontroladores).

1985

Primeras memorias de 1 Megabit.

Actividad 1. Realizar una lnea de tiempo, un cuadro descriptivo o un mapa mental resumiendo los desarrollos
ms sobresalientes que conforman el diseo lgico y la electrnica digital tomando como base los puntos
anteriores hasta nuestra actualidad.
Escalas de Integracin de los Circuitos Integrados.
En la actualidad se ha logrado introducir cantidades formidables de transistores en un solo circuito integrado.
De hecho, los circuitos integrados se clasifican de acuerdo a la cantidad de transistores que contienen:

S.S.I. (Pequea escala de integracin).- Menos de 100 transistores por circuito integrado.
M.S.I. (Media escala de integracin).- De 100 hasta 1000 transistores por circuito.
L.S.I. (Alta Escala de Integracin).- De 1000 a 10,000 transistores por circuito.
V.L.S.I. (Muy Alta Escala de Integracin).- Ms de 10,000 transistores por circuito.

Actividad 2. Investigar si existen ms escalas de integracin y escribir un ejemplo de cada escala de integracin
para circuitos integrados.
El mundo analgico y el mundo digital.
Es conveniente tener clara la distincin entre los conceptos Analgico y Digital antes de introducirnos al mundo
de la electrnica digital, para ello consideremos los siguientes circuitos elctricos:

Figura 2. Circuito analgico.

Para el circuito de la izquierda la relacin de la salida


(Vout) respecto a la entrada (Vin) est dada por:

1 + 2

De esta manera Vout puede tomar una infinidad de


valores dependiendo de la variacin de Vin.

Figura 3. Circuito digital.

Para el circuito de la derecha la relacin de la salida


(Luz) respecto a la entrada (Vin) est dada por la
siguiente tabla
Vin
0
V

Luz
ON
OFF

Por esto la luz slo puede tomar dos


estados o valores al variar Vin
debido a la posicin del switch S.

Pgina 3

SISTEMAS Y CDIGOS NUMRICOS

En general podemos pensar en una seal analgica como aquella que puede tomar una infinidad de valores en
un intervalo finito. En la Figura 4, se presenta una grfica tpica de una seal analgica que vara con el tiempo.
Como puede observarse en la Figura 4, la seal f(t)
puede tomar cualquier valor entre f(t1) y f(t2).
Ejemplos de seales analgicas: Temperatura del
cuerpo, velocidad de un auto, distancia recorrida por
un peatn, peso corporal, etc.

Figura 4. Grfica de una seal analgica.

A diferencia de las seales analgicas, una seal


digital o discreta slo puede tomar una cantidad finita
de valores en un intervalo cualquiera. En la Figura 5
se muestra una seal digital tpica que vara con el
tiempo.
Como puede advertirse en la Figura 5, f(t) solamente
toma 6 valores diferentes entre f(t1) y f(t2).

Figura 5. Grfica de una seal digital.

Ejemplos de variables digitales: la edad en aos completos de una persona, el precio de un producto, el nmero
de pobladores de un pas, etc.
Un caso particular de seal digital que ser la que nos ocupe a lo largo de este curso es la llamada seal binaria
y se refiere simplemente a una seal discreta que slo puede tomar dos valores. En la Figura 6 se muestra una
seal binaria tpica que vara con el tiempo.
As como hay seales analgicas y digitales,
tambin los dispositivos pueden clasificarse de
esta manera dependiendo de las seales que
manejan o de los principios de operacin en
que estn basados. As, podemos hablar de
dispositivos analgicos o dispositivos
digitales.

Figura 6. Grfica de una seal binaria.

Inclusive los mtodos que nos permiten abordar problemas en general pueden ser clasificados como mtodos
analgicos o mtodos digitales. De hecho, un mismo problema puede ser resuelto por ambos enfoques.
Ejemplo 1. Contar el nmero de nueces en un costal:
Solucin digital: Contar de una en una las nueces.
Solucin analgica: Medir el peso promedio de una nuez, pesar el costal y dividir el peso del costal
entre el peso promedio de la nuez.
Pgina 4

SISTEMAS Y CDIGOS NUMRICOS

Sistemas Numricos.
Los sistemas digitales manejan informacin binaria, es decir, disponen solamente de dos valores para
representar cualquier informacin. Esto hace que los sistemas digitales sean ms confiables que los analgicos,
ya que es ms fcil distinguir entre dos valores que entre una gran cantidad de ellos. Sin embargo, esto implica
que si se desea disear o entender sistemas digitales, especialmente aquellos que manejan informacin de tipo
numrico es necesario dominar el sistema de numeracin binario. En este captulo, se presenta dicho sistema
de numeracin comenzando con una introduccin general sobre sistemas de numeracin y haciendo nfasis en
los sistemas de numeracin binario y hexadecimal, por su aplicacin directa a sistemas digitales.
Cul es el significado numrico de la representacin acostumbrada para los nmeros? Es decir, por ejemplo
qu significa la representacin del nmero N=1998?
Como es sabido, el nmero anterior significa 1 millar, ms 9 centenas, ms 9 decenas, ms 8 unidades, es decir,
N puede escribirse como:
N= 1*103 + 9 * 102+ 9*101 + 8*100
Es decir, en general, un nmero cualquiera N de n dgitos escrito como
N = An-1 An-2 ... A1 A0

(1.1)

Donde, los dgitos An-1, ... A1 A0 son alguno de los diez siguientes: 0, 1, 2, ..., 9. Tambin podr escribirse como
N = An-1*10n-1 + An-2*10n-2+ ...+ A1*101 + A0*100

(1.2)

En este punto es conveniente introducir las siguientes definiciones:


Sistema Numrico. Se llama sistema numrico al conjunto ordenado de smbolos o dgitos y a las
reglas con que se combinan para representar cantidades numricas. Existen diferentes sistemas
numricos, cada uno de ellos se identifica por su base.
Dgito. Un dgito en un sistema numrico es un smbolo que no es combinacin de otros y que
representa un entero positivo.
Bit. Es un dgito binario (Abreviacin del ingls binary digit), es decir, un 0 o un 1.
Base de un sistema numrico. La base de un sistema numrico es el nmero de dgitos diferentes
usados en ese sistema.
Notacin. En adelante, para distinguir entre los diferentes sistemas numricos encerraremos entre parntesis el
nmero y le aadiremos un subndice, indicando la base que se est usando. Sin embargo, si no se usa subndice
se deber entender que el nmero est en base diez, a menos que se diga lo contrario.
Ejemplos:
2) 35 = (35)10 = 35 base 10 (sistema decimal).
3) (110100)2 = 110100 base 2 (sistema binario).
4) (34)16 = 34H = 34 base 16 (sistema hexadecimal).

Pgina 5

SISTEMAS Y CDIGOS NUMRICOS

Sistemas Numricos
Ms Usados

Binario
Base 2
Dgitos:
0,1

Octal
Base 8
Dgitos:
0, 1, 2, 3, 4, 5, 6, 7

Decimal
Base 10
Dgitos: 0,1,2,3,4,5,6,7,8,9

Hexadecimal
Base 16
Dgitos: 0,1,2,3,4,5,
6,7,8,9,A,B,C,D,E,F

Figura 7. Sistemas numricos ms usados en diseo digital.

Notacin.
En general cualquier nmero entero consta de
Parte entera . Parte Fraccionaria
Cualquier nmero se puede escribir de dos maneras, mediante la notacin yuxtaposicional o simplemente
posicional (ecuacin 1.1) o la notacin polinomial (ecuacin 1.2).
Notacin posicional.
Al escribir un nmero con esta notacin, la posicin de cada dgito nos dice su peso relativo. En general, en la
base b un nmero N de n dgitos en la parte entera y m dgitos en la parte fraccionaria en esta notacin se
escribe:
N = (an-1 an-2 .... a1 a0 . a-1 .... a-m )b

(1.3)

En esta notacin el dgito de ms a la izquierda (an-1) es decir, el que pesa ms se denomina dgito ms
significativo (MSD), en forma similar el de ms a la derecha (a-m), es decir, el que pesa menos se le llama
dgito menos significativo (LSD).
Ejemplo 5:

(218.25)10 b=10, n=3, m=2

Notacin polinominal.
En general, cualquier nmero N puede ser escrito como un polinomio en potencias de la base. As, la notacin
polinomial para el nmero expresado por (1.3) ser:

1
= 1
+ 2 2 + + 1 1 + 0 0 + 1 1 + +
= = 1

Ejemplo 6:

(1.4)

N = (218.25)10 = 2*102 + 1*101 + 8*100 + 2*10-1 + 5*10-2

Conversin Entre Sistemas Numricos.


El problema general de convertir un nmero de su representacin en base r a la correspondiente en base q se
puede resolver en un slo paso si se maneja aritmtica de base r o de base q, sin embargo, si se quiere usar en
el proceso solamente aritmtica de base 10 debemos plantearlo en dos etapas como se muestra en la Figura 8.

Pgina 6

SISTEMAS Y CDIGOS NUMRICOS

Figura 8. Conversin de base r a base q usando aritmtica de base 10.

Conversin de Base r a Base 10.


Como lo sugiere la figura 8, este caso puede ser tratado directamente usando la notacin polinomial y aritmtica
de base 10. Este procedimiento consiste en usar la expresin (1.4) expresando todas las cantidades involucradas
en decimal.
Ejemplo 7.

Convertir (B2A)16 a base 10.

Expresando el nmero en notacin polinomial usando base 10 para representar cada cantidad involucrada en
dicha notacin:
(B2A)16 = (B*162 + 2*161 + A*160)10
= (11x256 + 2x16 + 10x1)10
= (2858)10
Ejemplo 8.

Convertir (11011)2, a base 10.

En forma similar al ejemplo anterior


(11011)2 = 1*24 + 1*23 + 0*22 + 1*21 + 1*20
=16 + 8 + 0 + 2 + 1
= (27)10
NOTA. En este caso y en los sucesivos se han obviado los parntesis y el subndice 10 para indicar decimal,
excepto hasta el resultado final.
Ejemplo 9.

Convertir (12101.121)3 a decimal.


(12101.11)3 = 1*34 + 2*33 + 1*32 + 0*31 + 1*30 + 1*3-1 + 2*3-2 + 1*3-3
= 1*81 + 2*27 + 1*9 + 0 + 1 + 1/3 + 2/9 + 1/27
= (145.592592...)10

Conversin de Base 10 a Base q.


El mtodo para realizar esto que se presenta aqu y que se denomina mtodo de divisiones sucesivas por la base
q est basado en las siguientes consideraciones generales:
Consideremos un nmero entero N escrito en la base r, en la notacin posicional, es decir,
N= (an-1 an-2 ...a1 a0)r
En notacin polinomial, es decir,
N = an-1 rn-1 + an-2 rn-2 + ... + a1 r1 + a0
Factorizando r podemos reescribir

Pgina 7

SISTEMAS Y CDIGOS NUMRICOS

N = r[ (an-1 rn-2 + an-2 rn-3 + ... + a1) + (a0/r) ]


Es decir,
N/r = (an-1 rn-2 + an-2 rn-3 + ... + a1) + (a0/r)
Como se observa, el primer trmino en el segundo miembro de la igualdad anterior que denotaremos N1 se
puede representar en forma posicional en base r como sigue
N1 = (an-1 an-2...a1)r
Con lo cual
N/r = N1 + (ao/r)
Conclusin. La expresin anterior significa que al dividir N =(an-1 an-2 ... a1 a0)r entre r obtenemos como cociente
N1 y como residuo de la divisin a0. En forma similar si dividimos N1 = (an-1 an-2...a1)r entre r obtendremos
como cociente N2 = (an-1 an-2...a2)r y como residuo a1 y as sucesivamente.
De esta manera, para obtener los n dgitos de N en base r se debern obtener los n residuos de n divisiones
sucesivas entre r. Obtenindose en el orden de LSD a MSD.
Ejemplo 10.

Convertir (25)10 a base 2, 8 y 16.

Para este proceso se formar el siguiente arreglo de divisiones sucesivas entre la base
Para la base 2, se tiene que
(25)10 = (11001)2
En adelante se obviarn los
comentarios de la Tabla 1 y solo se
mostrarn los cocientes, residuos y la
base entre la cual se est dividiendo.

Tabla 1. Tabla de conversin aplicando divisiones sucesivas.

Para la base 8:

(25)10 = (31)8

Para la base 16:

(25)10 = (19)16

Pgina 8

SISTEMAS Y CDIGOS NUMRICOS

Nmeros fraccionarios.
La parte fraccionaria de un nmero de base 10 puede convertirse a base r en forma similar a lo descrito para la
parte entera, pero en este caso, en lugar de realizar divisiones se realizan multiplicaciones sucesivas, y en lugar
de tomar residuos se toman las partes enteras resultantes de dichas multiplicaciones, obtenindose los dgitos
del nmero en base r en el orden de MSD a LSD.
Esto se justifica de manera similar a lo mostrado para el caso de las divisiones sucesivas, ya que si un nmero
N se representa en notacin posicional en base r como
N = (0.a-1 a-2 a-3 ...)r
Es fcil ver que
N*r = (a-1 . a-2 a-3 a-4 ...)r
Es decir que la parte entera de N*r es a-1.
Ejemplo 12: Convertir (0.27)10 a base 2
Es decir, (0.27)2 = (0.01000101...)2
En adelante se obviarn detalles en este
procedimiento.

Tabla 2. Tabla de conversin aplicando multiplicaciones sucesivas.

Caso particular conversin entre bases rk y r.


Cuando una de las bases involucradas en la conversin es una potencia entera de la otra la conversin se vuelve
muy sencilla, ya que se puede realizar en un slo paso expresando cada dgito del nmero en base rk usando k
dgitos de base r. Adems, este procedimiento no requiere aritmtica de ningn tipo.
Ejemplo 13.

Convertir N = (10111011110)2 a base 8 y a base 16.

Para base 8: Como 8 = 23, bastar con representar cada 3 dgitos del nmero binario en octal como se
muestra a continuacin

Pgina 9

SISTEMAS Y CDIGOS NUMRICOS

N = 10, 111, 011, 110


2736
Es decir, N = (2736)8
Para base 16: Como 16=24, en forma similar al caso anterior
N = 101,1101,1110
5DE
Es decir, N =(5DE)16
Ejemplo 14.

Convertir N =(3F45)16 a base 4 y a base 2.

Para base 4 como 16 = 42, se convertir cada dgito del nmero usando 2 dgitos de base 4 como se
muestra a continuacin
N=3,F,4,5
03 33 10 32
Es decir, N=(03331032)4
Para base 2 en forma similar, como 16 = 24
N=3,F,4,5
0011 1111 0100 0101
Es decir, N = (0011111101000101)2
Por la importancia del caso a continuacin se tratar de manera especial el caso de base dos o sistema binario,
ya que la informacin manejada por los sistemas digitales es informacin de tipo binaria.
Los Sistemas Octal y Hexadecimal.
Como se puede observar del caso de conversin descrito en la seccin anterior, el sistema octal (base 8) y
hexadecimal (base 16) pueden ser considerados como binario abreviado, en el sentido de que la conversin
de stos a binario y viceversa es prcticamente inmediata a simple vista, es por ello que estos sistemas
tradicionalmente han sido utilizados para representar de manera compacta informacin binaria en los sistemas
digitales.
Obsrvese que para realizar la conversin octal-binario o hexadecimal-binario, basta tener presente la
conversin de los 8 dgitos del octal o de los 16 dgitos del hexadecimal:
El Sistema Binario.
El sistema binario (r=2) requiere nicamente dos dgitos, 0 y 1. Este sistema es ideal para uso en sistemas
digitales, ya que stos estn construidos de dispositivos de dos estados (relevadores, transistores, etc.).
Notacin: Se acostumbra representar los dgitos binarios (bits) de diversas maneras, dependiendo del contexto,
por ejemplo:
1= encendido = ON = alto = H
0= apagado = OFF = bajo = L
Pgina 10

SISTEMAS Y CDIGOS NUMRICOS

Tabla 3. Tabla de conversin entre los sistemas decimal, hexadecimal, octal y binario.

Cuando se conectan varios dispositivos que pueden almacenar cada uno de ellos un bit, al arreglo as formado
se le llama registro, de esta manera, diferentes combinaciones de valores de los bits guardados en un registro se
pueden interpretar como un nmero binario. As, un registro de 8 bits se representar como sigue:

Registro de 8 bits
Dependiendo de la longitud (medida en nmero de bits) del registro, este se denomina de acuerdo a la siguiente
Tabla 4.
El uso del trmino palabra es ms genrico y algunos
autores hablan de palabras de 8 de 16, de 32 bits, etc.

Tabla 4. Nombre de los registros de acuerdo a la cantidad


de bits utilizados.

Conversin de Binario a Decimal.


En temas anteriores fue tratado el caso general de conversin de cualquier base a decimal usando la
representacin polinomial. Es conveniente tratar el caso particular de convertir un nmero binario a decimal
por ser un caso muy utilizado en sistemas digitales y porque el mtodo puede ser simplificado de la siguiente
manera:
Anote (de ser posible mentalmente) los pesos o potencias de 2 correspondientes a las posiciones de los bits
del nmero a convertir. Luego, simplemente, sume los pesos correspondientes a las posiciones de los bits 1.
Para ello es conveniente memorizar algunas potencias de 2.

Tabla 5. Tabla de conversin directa a sistema decimal.

Pgina 11

SISTEMAS Y CDIGOS NUMRICOS

Ejemplo 15.

Convertir los siguientes nmeros de binario a decimal: N1= (101101) 2, yN2=(1010110.11)2

Para N1:
Pesos: 32 16 8 4 2 1
N1 = ( 1 0 1 1 0 1 )2
Sumando los pesos correspondientes a los bits 1,
N1=32+8+4+1 = 4510
Para N2:
Pesos: 64 32 16 8 4 2 1 -1 -2
N1 = ( 1 0 1 0 1 1 0 . 1 1 )2
Entonces
N1 = 64+16+4+2 + 0.5+0.25 = 86.7510
Aritmtica Hexadecimal.
Suma.
El procedimiento es el siguiente:
1. Se suman los dos nmeros.
2. Si la suma es 15 o menos, se expresa como un dgito.
3. Si la suma es mayor a 15, se resta 16 y se desplaza un 1 a la siguiente posicin del dgito.
Ejemplo 16:
NOTA. En los ejemplos siguientes se ignora el subndice de la base del sistema hexadecimal.
La suma de 9+7=1610 en el sistema decimal, para el sistema hexadecimal, tenemos
9
+ 7

1
9
+ 7
10

Como la suma es 16 le restamos, 16, y el resultado es 0, y desplazamos un 1 a la siguiente posicin,


ms ejemplos del mismo caso
10+6=1610
1

+ 6
1 0

15+14=2910
1

+
1

10+10=2010
1

+
1 4

10+11+12=3310
2

+
+
21

Para este ltimo caso tenemos como resultado un 33, el cual si se le resta 16, obtenemos 17, el cual
sigue siendo un nmero mayor a 15, por lo tanto volvemos a restarle 16. De esta manera se desplaza

Pgina 12

SISTEMAS Y CDIGOS NUMRICOS

un 2 a la siguiente posicin del dgito. As, se concluye que para cada resta de 16, incrementaremos un
1 a la siguiente posicin del dgito.
Ejemplo 17.
79+207+166=45210

47+63+31+4=14510
3
2
+ 3
+ 1
+ 4
91

12
4
+
+ 6
14

Resta.
Para la realizacin de la resta, existen 2 mtodos:
1.

Complemento a 15.
1.

Si la cantidad de dgitos del sustraendo es menor que la del minuendo, se completa el sustraendo
con ceros a la izquierda de la parte entera, y a la derecha de la parte decimal (encolumnar por la
coma).

8 , 0 1 ()
35
()
2.

Se halla el complemento del sustraendo, restando este valor del mximo valor hexadecimal con
la misma longitud del minuendo. Obteniendo como resultado el complemento a 15.

,
35, 00
4 1 ,
3.

Se suma el minuendo al complemento del sustraendo.

8 , 0 1
+ 41,
5 2 8 ,0 0
4.

Se elimina el 1 de la izquierda y se suma encolumnado con el ltimo dgito de la cifra, sin importar
la coma decimal.

8 , 0 1
+ 41,
528, 00
+

Resultado

Otro ejemplo (18), A4FC9-DE8= ?


49

49
00 8


00 8
2 1 7

11 1 1
4 9
+ 217
410

410

Resultado

Por lo tanto, A 4 F C 9 D E 8 = A 4 1 E 1
Pgina 13

SISTEMAS Y CDIGOS NUMRICOS

2. Complemento a 16.
1.
Si la cantidad de dgitos del sustraendo es menor que la del minuendo, se completa el
sustraendo con ceros a la izquierda de la parte entera, y a la derecha de la parte decimal (encolumnar
por la coma).
49
00 8

2.
Se halla el complemento del sustraendo, restando este valor del mximo valor hexadecimal
con la misma longitud del minuendo.

00 8
2 1 7

3.

Se suma 1, al resultado obtenido en el paso anterior, para obtener as el complemento a 16.


+

4.

Se suma el complemento a 16, resultado del paso anterior, al minuendo.

Acarreo
5.

217
1
218

11 1 1
4 9
+ 218
4 1 1

Resultado

El acarreo final obtenido es despreciado.

Aritmtica Octal.
Suma.
La suma en sistema octal se realiza de la misma manera como en el sistema hexadecimal. Cabe mencionar que
para todos los diferentes sistemas se maneja el mismo procedimiento para las operaciones.
1.
2.
3.

Se suma dgito a digito de los sumandos.


Cuando la suma es 7 o menos, se expresa como un dgito.
Si la suma es mayor a 7, se resta 8 y se desplaza un 1 a la siguiente posicin del dgito.

Ejemplo 19.

Resta.
De la misma forma que la resta hexadecimal, existe el Complemento a 7 y el Complemento a 8. En seguida se
enlistan los pasos de acuerdo al complemento a 7.
1.

Si la cantidad de dgitos del sustraendo es menor que la del minuendo, se completa el sustraendo con
ceros a la izquierda de la parte entera, y a la derecha de la parte decimal (encolumnar por la coma).

Pgina 14

SISTEMAS Y CDIGOS NUMRICOS

2.

Se halla el complemento del sustraendo, restando este valor del mximo valor octal con la misma
longitud del minuendo. Obteniendo como resultado el complemento a 7.

3.

Se suma el minuendo al complemento del sustraendo.

4.

Se elimina el 1 de la izquierda y se suma encolumnado con el ltimo dgito de la cifra, sin importar la
coma decimal.
+
+

Ejemplo 20.

6 2 0 4,0 2
2 6 0 4,7 7
1 0 1 1 ,0 1

Resultado

Aplicando Complemento a 8.
3712
144

3712
0144

7777
0144
7633
+

1
7 6 3 4

1 1
3712
+ 7634
3546

Resultado

Acarreo
Como se observa, el acarreo es ignorado.
Aritmtica binaria.
Una de las principales aplicaciones de la electrnica digital es el diseo de dispositivos capaces de efectuar
clculos aritmticos, ya sea como principal objetivo (calculadoras, computadoras, mquinas registradoras, etc.)
o bien, como una subfuncin que les permita realizar su cometido principal (medidores, controladores,
registradores, etc.) Por ello, y dado que los sistemas digitales slo pueden manejar informacin binaria, es
necesario entender las operaciones aritmticas fundamentales en trminos del sistema de numeracin binario.
En este tema se tratan las operaciones fundamentales en el sistema binario solamente para nmeros enteros.
Un tratamiento ms general debe contener un tratamiento de nmeros fraccionarios, es decir, la aritmtica de
punto fijo y la de punto flotante. La primera de estas dos es una extensin casi inmediata de la aritmtica entera.
Notacin.
En este tema cuando no se anote el subndice de un nmero que slo contiene unos y ceros se sobreentender
que est en binario.
Adicin o suma binaria.
En forma similar a como realizamos las sumas en decimal, para realizarlas en otros sistemas es necesario
aprender de memoria algunas sumas bsicas, especialmente las sumas de dgito con dgito; en decimal son 100
sumas (tablas de sumar), mientras que en binario son slo 4, puesto que en binario slo hay dos dgitos:

Pgina 15

SISTEMAS Y CDIGOS NUMRICOS

Tabla 6. Tabla de suma binaria.

Ejemplos:
21) Sumar 101101 + 10101, es decir, 45 10 + 2110

Acarrreos:

1
1

1
0
1
0

+
1

1
1
0
0

1
0
0
1

1
1
0

Acarreos:
1
1
0

4
2
6

5
1
6

22) Sumar 11101 + 111, es decir, 2910 + 710

Acarrreos:
+
1

1
1
0
0

1
1
0
0

1
1
1
1

Acarreos:

1
0
1
0

1
1
0

1
2

9
7
6

+
3

Sustraccin o resta binaria.


En forma similar a la suma, es conveniente memorizar la siguiente tabla:

Cuando la tabla anterior se usa en la resta de cantidades de varios bits,


se resta columna por columna de LSB a MSB y si aparece el caso de
restar 0 - 1 se interpreta como si fuera 10 - 1, resultando un 1 y un
acarreo negativo, o prstamo de 1 tomado de la siguiente columna.
Tabla 7. Tabla de resta binaria.

Ejemplos:
23) Restar 101101 - 10101, es decir, 4510 2110

Prstamos:

-1
1
0

Prstamos:
0
1
1

1
0
1

1
1
0

0
0
0

1
1
0

4
2
2

5
1
4

24) Restar 11101 - 111, es decir, 2910 - 710

Prstamos:
-

1
0
1

-1
1
0
0

-1
1
1
1

Prstamos:
0
1
1

1
1
0

2
2

9
7
2

Pgina 16

SISTEMAS Y CDIGOS NUMRICOS

Representacin de nmeros negativos.


En la construccin de dispositivos digitales que realicen operaciones de resta se puede obtener un considerable
ahorro si esta operacin es realizada mediante los mismos dispositivos que realizan la suma, de esta manera no
es necesario construir dos tipos de dispositivos, y el problema se convierte ms bien en cmo manejar
adecuadamente los nmeros negativos para realizar restas usando sumas.
Magnitud signada.
El mtodo de representacin de nmeros negativos que consiste en anteponer un signo - al valor absoluto de
la cantidad se le llama magnitud signada y es el mtodo tradicionalmente usado en decimal, ya que est pensado
en su manipulacin por humanos.
Ejemplos:

-510, -10112, .5EH, ... etc.

La principal desventaja del mtodo de magnitud signada es que requiere de dos mtodos diferentes, uno para la
suma y otro para la resta.
Sistema de numeracin de complemento a la base (complemento a dos).
Un mtodo de representacin de cantidades negativas que permite realizar restas mediante sumas consiste en
representar los nmeros negativos por su complemento, es decir, por lo que les falta para cierta cantidad tomada
como base.
En el sistema de numeracin de complemento a la base r, los nmeros negativos de n dgitos se representan por
la cantidad que les falta para completar rn. Es decir, en este sistema, la cantidad Nr se representa por su
complemento, es decir, como rn -N y en ocasiones se denota [N]r.
Ejemplos:
25) Caso decimal (complemento a 10) para 2 dgitos (r=10, n=2)
-1510= 102 - 15 = [85]10
De esta manera, una resta como 45 - 15, se puede realizar mediante la suma 45 + 85 =
(1)30, despreciando el acarreo indicado entre parntesis, ya que slo se estn usando 2
dgitos.
26) Caso binario (complemento a 2) para 4 dgitos (r=2, n=4)
-01012 = (10000 - 0101)2 = [1011]2
De esta manera, una resta como 1010,
- 0101
0101

se puede realizar mediante la suma 1010


+ 1011
(1)0101

Despreciando el acarreo indicado entre parntesis, ya que slo se estn usando 4 dgitos.
Observacin: En el sistema de complemento a dos de los nmeros positivos se escriben sin ningn cambio.
Bit de signo (S).
En el sistema de numeracin de complemento a dos el MSB se denomina bit de signo y se usa para indicar el
signo del nmero representado, de acuerdo a la siguiente convencin:
S = 0 El nmero es positivo y el resto de los bits indica su magnitud directamente.
S = 1 El nmero es negativo y est en la forma complementada.
Pgina 17

SISTEMAS Y CDIGOS NUMRICOS

Ejemplo 27:

Expresar +5 y -5 en una palabra de 8 bits en el sistema de complemento a 2.

+ 5 es positivo y se expresar directamente con su magnitud en binario como 0000101


- 5 es negativo y estar expresado en la forma de complemento a 2 como:
+5=00000101
Complemento a 2: 1 1 1 1 1 0 1 1 = - 510
Obsrvese que de acuerdo a esta convencin del sistema de complemento a dos, al aplicar el complemento a 2
a un nmero binario, equivale a cambiarle el signo (multiplicar por -1).
Ejemplo 28:

11010112 es un nmero de 7 bits, incluyendo el bit signo. Cul es su equivalente decimal?


Como el bit signo es = 1, el nmero es negativo y se encuentra en su forma
complementada.
1 1 0 1 0 1 1 : Nmero negativo
0 0 1 0 1 0 1 : Valor absoluto (complemento a dos del nmero)
21 : Equivalente decimal del complemento, entonces: [1101011]2 = -2110

Ejemplo 29:

Si (01101011)2 es un nmero de 8 bits, incluyendo el bit signo. Cul es su equivalente


decimal?.
Como el bit signo es = 0, el nmero es positivo y el resto de los bits indican su magnitud.
Nmero positivo: 0 1 1 0 1 0 1 1 = 107 10
Valor absoluto: 0 1 1 0 1 0 1 1 ;entonces (01101011)2 =+10710

Ejemplo 30:

Cul es el equivalente en binario de complemento a dos de (-535)10 ?

Usaremos hexadecimal como paso intermedio a binario. Convirtiendo +535 a Hexadecimal:

Por tanto (+535)10 = (010 0001 0111)2


(+535)10 = 010 0001 0111
101 1110 1001: complemento a dos
Por lo tanto (-535)10 = [101 1110 1001]2
Obsrvese que para indicar este resultado se requieren por lo menos 11 bits.
Complemento a la base disminuida.
Una alternativa al sistema de complemento a la base es el complemento a la base menos 1. En este sistema un
nmero negativo -N de n dgitos en base r se representa por lo que le falta para llegar a rn-1 y se suele denotar
por [N]r-1, es decir, [N]r-1 = rn - 1 - N. en otra palabras, [N]r-1 = [N]r -1.
Ejemplos:
31) Caso decimal (complemento a 9) para 2 dgitos (r=10, n=2)
-1510 = 102 - 1 - 15 = 99 - 15 = [84]9

Pgina 18

SISTEMAS Y CDIGOS NUMRICOS

De esta manera, una resta como 45 - 15, se puede realizar mediante la suma 45 + 84 =
(1)+29,
(Sumando el acarreo indicado entre parntesis como una correccin del resultado).
32) Caso binario (complemento a 2) para 4 dgitos (r=2, n=4)
-01012 = (10000 - 1 - 0101)2 = (1111 - 0101)2 = [1010]1
De esta manera, una resta como 1010, se puede realizar mediante la suma 1010
- 0101
+ 1010
0101
(1)0100
+1
0101
(Sumando el acarreo indicado entre parntesis).

Obtencin de complementos binarios sin usar restas.


La ventaja que provee el sistema de complementos al convertir una resta en una suma no sera tal si para obtener
el complemento usamos la definicin, ya que esta requiere una resta. A continuacin se describen dos
algoritmos que permiten obtener el complemento a 2 sin usar restas:
Algoritmo 1
1) Se copian los bits del nmero LSB a MSB hasta encontrar el primer bit 1.
2) Se prosigue invirtiendo los bits restantes (es decir, cambiando 1s por 0s y 0s por 1s)
hasta llegar al MSB.
Ejemplo 33.

Para obtener el complemento a 2 de N=10110100


Se copian los primeros bits hasta el primer 1: 100
Se invierten los bits restantes: 01001
Resultando finalmente: 01001100

Algoritmo 2
1) Se obtiene el complemento a 1 del nmero invirtiendo todos sus bits.
2) Se suma 1 al resultado anterior.
Ejemplo 34.

Para obtener el complemento a 2 de N= 010110


Se invierten todos los bits (complemento a 1): 101001
Se suma 1 al resultado: +1
Resultando finalmente: 101011

Sumas y restas usando complemento a dos.


A continuacin se dan algunos ejemplos de restas usando complemento a dos, se introduce el concepto de
sobreflujo y el de bit de signo.
Sobreflujo. Se dice que una operacin (en el sistema de complemento a dos) produce un sobreflujo, cuando el
resultado requiere ms bits que los que se estn usando en la operacin.
Para visualizar el concepto de sobreflujo, es conveniente tener en mente el rango representable en complemento
a dos con n bits.
Ejemplo 35:

Cul es el rango de nmeros representables en complemento a dos con 3 bits?

En este caso es simple representar todos los nmeros e interpretarlos en decimal:

Pgina 19

SISTEMAS Y CDIGOS NUMRICOS

Entonces el rango es de -4 a +3. No es difcil concluir que en general


el rango representable con n bits ser de -2n-1 a +2n-1-1.
De acuerdo al ejemplo anterior, si intentamos sumar (por ejemplo) 3+2
usando tres bits, el resultado (5) no podr ser expresado con tres bits,
ya que se sale del rango y se tendr un sobreflujo.

Tabla 8. Rango de nmeros representados con 3 bits.

Ejemplo 36:

Realizar las siguientes sumas en binario de complemento a dos, usando 4 bits. Indicar el signo
del resultado y en donde se produce sobreflujo:
a) 4+3

0
0
0

1
0
1

0
1
1

0
1
1

El resultado es positivo y no hay sobreflujo.


b) -4 + 5

+
1

1
0
0

1
1
0

0
0
0

0
1
1

El resultado es positivo y no hay sobreflujo.


c) -4 - 5 ,no se obtiene complemento para el -5, la suma se realiza de forma directa.

+
1

1
1
1

1
1
0

0
0
0

0
1
1

El resultado es positivo, lo cual no puede ser pues se estn sumando dos datos negativos
y hay sobreflujo.
d) 6 + 5

0
0
1

1
1
0

1
0
1

0
1
1

El resultado es negativo, lo cual no puede ser pues se estn sumando dos datos positivos
y hay sobreflujo.
e) 9 + 2
Esta operacin NO se puede realizar con 4 bits, ya que el 9 requiere al menos 5 bits para
ser expresado en el sistema de complemento a 2.

Pgina 20

SISTEMAS Y CDIGOS NUMRICOS

Interpretacin del acarreo en el resultado de sumas en complemento a 2.


"Si los signos de los nmeros que se suman son diferentes, cualquier acarreo obtenido es falso y deber de ser
ignorado".
Ejemplo:

Ver inciso (b) del ejemplo anterior.

"Si los signos de los nmeros que se suman son iguales, el acarreo es verdadero y acta como el bit signo. En
ausencia de acarreo se considera que este es 0, as la respuesta es positiva".
Ejemplos ver incisos (a), (c) y (d) del ejemplo anterior.
Ejemplo 37:

Efecte las siguientes operaciones y exprese el resultado en decimal con su signo (MSB = bit
signo)

a).-

0
1
0

+
1

1
0
0

1
1
1

1
1
0

1
0
1

0
0
1

1
1
0

1
0
1

Como los signos de los nmeros son diferentes, el acarreo se ignora bit signo = 0 = + resultado = + 00101101
= +4510. Como el segundo nmero es negativo, se obtiene su complemento a 2, el bit de signo permanece igual
y se suma al primero. Por lo tanto el resultado anterior es errneo. De manera que queda as:

0
1
0

+
1

1
1
1

1
0
0

1
0
0

1
1
1

0
1
0

1
1
0

1
0
1

1
-

y en decimal es

2
5
7

3
0
3

El resultado concuerda con el resultado en decimal, ya que el acarreo es ignorado de acuerdo a la nota anterior.
b).-

1
1
0

+
1

0
0
0

0
1
1

1
0
1

0
0
1

1
1
1

1
1
0

1
0
1

+
y en decimal es

2
3
6

3
8
1

Como los signos son iguales, el acarreo es el bit de signo del resultado acarreo = bit signo = 1, por lo tanto el
resultado es un nmero negativo.

Multiplicacin binaria.
El conjunto bsico de multiplicaciones de un slo bit que hay que memorizar se resume en la siguiente tabla.
Tabla de multiplicar:
*
0
1

0
0
0

1
0
1

Sin embargo, al realizar multiplicaciones de nmeros de varios bits, usamos


las mismas reglas de la multiplicacin decimal. De manera que una
multiplicacin de este tipo se convierte al final en varias sumas.

Tabla 9. Tabla de multiplicacin binaria.

Pgina 21

SISTEMAS Y CDIGOS NUMRICOS

Ejemplo 38:

1
*

1
1

0
0
1

1
0
1
0

0
1
0
0
1
1

1
0
1
0

1
1
1

1
*

y en decimal, se tiene

1
5
5

Multiplicacin por sumas y corrimientos.


Como se puede observar en el ejemplo, la multiplicacin puede realizarse en una forma ms sistematizada como
se indica enseguida, de acuerdo a los bits del multiplicador, comenzando por el LSB hacia el MSB. El algoritmo
descrito a continuacin es especialmente til si la multiplicacin va a ser realizada por una mquina digital
(circuitos o computadora digital).
Algoritmo
1)
2)
3)
4)

Si el primer bit en el multiplicador es 1, anote el multiplicando como resultado parcial.


Si el primer bit del multiplicador es 0; anote ceros como resultado parcial.
Se recorre el multiplicando un lugar a la izquierda.
Por cada 1 en el multiplicador despus del primer bit sume el multiplicando al resultado parcial.
Enseguida recorra el multiplicando un lugar a la izquierda.
5) Por cada cero en el multiplicador despus del primer bit, no sume, nicamente recorra el multiplicando
un lugar a la izquierda.
6) Repita el procedimiento hasta incluir todos los bits del multiplicador.

Comprobando en decimal: (17)10 * (25)10 = (425)10


Divisin binaria.
En la divisin de nmeros binarios se puede aplicar el mismo procedimiento de prueba y error que se usa en la
divisin decimal.
Ejemplo 39:

Pgina 22

SISTEMAS Y CDIGOS NUMRICOS

Divisin por restas y corrimientos.


En forma similar a la multiplicacin, la divisin se puede sistematizar para realizarla por restas y corrimientos.
En este algoritmo el cociente es obtenido bit por bit, as, cada siguiente slo puede ser 0 1. As comenzando
de izquierda a derecha, si se puede substraer el divisor del dividendo, se anotar un 1 en el cociente, en caso
contrario el dgito ser 0. Despus de cada paso se hace un corrimiento del divisor hacia la derecha.
Ejemplo 40:

La divisin 5710 /310:

Cdigos numricos.
No toda la informacin que maneja un sistema digital es numrica, e inclusive, para la informacin numrica a
veces no es conveniente utilizar el sistema binario descrito temas anteriores. Por ello es conveniente idear
formas diferentes de representar (codificar) informacin diversa usando solamente ceros y unos. En este tema
se describen algunos cdigos tanto para informacin numrica como alfanumrica, cuyo uso se ha generalizado
por diversas razones, la mayora de las veces de conveniencia, aunque no siempre.
Los cdigos numricos sirven para representar nmeros con fines de procesamiento y almacenamiento. Los
nmeros de punto fijo y de punto flotante son ejemplos de estos cdigos.
Nmeros de punto fijo.
Se utilizan para representar, tanto enteros con signo como fracciones con signo. En ambos casos se usan los
mismos sistemas de magnitud y signos de complemento a dos o de complemento a uno para representar los
valores con signo. Los enteros de punto fijo tienen un punto binario implcito a la derecha del bit menos
significativo, las fracciones de punto fijo tienen un punto binario implcito entre el bit de signo y el bit ms
significativo.
Ejemplo 41.

Dar dos posibles interpretaciones del nmero de punto fijo de ocho bits 01101010 usando el
sistema de complemento a dos.
Como el bit de signo es 0, el nmero representa el entero positivo 1101010, o bien la fraccin
positiva 0.1101010.

Ejemplo 42.

Dar dos posibles interpretaciones del nmero de punto fijo de 8 bits 11101010, usando el
sistema de complemento a dos.
El bit del signo es 1, por lo tanto el nmero representa a 00010110, o bien 0.0010110.

Pgina 23

SISTEMAS Y CDIGOS NUMRICOS

CODIGOS DE
COMPUTADORA

CODIGOS
NUMERICOS

NUMEROS

REPRESENTACIONES

NUMEROS

DE PUNTO FIJO

CON EXCESO

DE PUNTO FLOTANTE

CODIGOS DE
CARACTERES Y
OTROS

DECIMAL
CODIFICADO

ASCII

CODIGO GRAY

EN BINARIO (BCD)
CODIGO PARA
DETECCIN Y
CORRECCION DE
ERRORES

CODIGOS

CODIGO

CODIGOS

DE PARIDAD

DOS DE CINCO

HAMMING

Figura 9. Cdigos utilizados en las computadoras.

Representaciones con exceso.


DECIMAL
7
6
5
4
3
2
1
0

REPRESENTACIN
BINARIA
0111
0110
0101
0100
0011
0010
0001
0000

EXCESO
8
1111
1110
1101
1100
1011
1010
1001
1000

Una representacin con exceso K de un cdigo C se


forma usando el valor K a cada palabra del cdigo
C. las representaciones con exceso se utilizan a
menudo para representar los exponentes de los
nmeros de punto flotante.
Las representacin con exceso 8 de la Tabla 10, se
obtiene al sumar (1000)2 al cdigo de 4 bits.

Tabla 10. Tabla de representacin con exceso (exceso 8).

Pgina 24

SISTEMAS Y CDIGOS NUMRICOS

Nmeros de punto flotante.


Un nmero de punto flotante es un nmero N que se escribe como, N = M*rE, donde M es la mantisa, es un
nmero de punto fijo que contiene los dgitos significativos de N y E es el exponente o caracterstica, es un
entero de punto fijo.
Al deducir la representacin de un nmero de punto flotante, la mantisa y la caracterstica se codifican por
separado. La base es implcita y no se incluye en la representacin.
La mantisa, muchas veces, se codifica con magnitud y signo, por lo general como una fraccin.
Ejemplo 43:

-246,36 = -2.4636 E+2 = -2,4636*102


82000000000 = 8,2 E+10 = 8,2 * 1010

Ejemplo 44:

Representar el nmero 1210 en sistema binario normalizado.


1210= 11002, normalizado es 0,1100 * 24
El exponente 4 en exceso a 128 (128+4) es 10000100
Representacin: 0

10000100

1100000000000000000000

Por lo tanto el -1210 en complemento a dos, es


Representacin: 1

10000100

0011111111111111111111

Decimal codificado en binario (BCD).


Los cdigos BCD nos permiten representar cada uno de los dgitos decimales (0,...,9) mediante 4 bits. El ms
sencillo de los cdigos BCD es el BCD8421 o BCD natural, que consiste simplemente en representar cada
dgito decimal por su binario equivalente. As tenemos
Ejemplo 45: Expresar 937.2510 en BCD.
937.2510 = 1001 0011 0111 . 0010 0101BCD
Ejemplo 46: Expresar el nmero N=
(10010110010111)BCD escrito en cdigo BCD8421,
en decimal.

Tabla 11. Cdigo BCD.

Separando los LSB a MSB en grupos de 4: N =(10,0101,1001,0111)BCD = 259710


Cdigo BCD exceso-3.
El cdigo BCD exceso-3 se obtiene a partir del cdigo BCD natural, simplemente sumando 310 (00112) a cada
cdigo BCD de cada dgito decimal. Esto se resume en la tabla 12.
Este cdigo resulta de utilidad en aplicaciones donde se requiere realizar operaciones aritmticas usando
complementos. Este cdigo es llamado autocomplementario porque el complemento a 9 de un numero decimal
puede ser obtenido complementando cada bit individualmente y el resultado sigue siendo un cdigo vlido en
BCD exceso 3.

Pgina 25

SISTEMAS Y CDIGOS NUMRICOS

Tabla 12. Cdigo BCD exceso 3.

Ejemplo 47:

Representar el nmero 90710 en BCD exceso-3 y usar el complemento a 1 para encontrar el


complemento a 9 del nmero:
90710 = 1100 0011 1010exc-3
0011 1100 0101exc-3

complemento a 1

= 09210

complemento a 9

Cdigo BCD 2421.


Este es otro cdigo BCD autocomplementario, y su nombre (2421) indica la ponderacin de sus bits para
obtener su equivalente en decimal y viceversa. En la siguiente tabla se ilustra este cdigo
Ejemplo 48: Representar el nmero 90710 en BCD
2421 y usar el complemento a 1 para encontrar el
complemento a 9 del nmero:
90710 = 1111 0000 11012421
0000 1111 00102421
complemento a 1
= 09210
complemento a 9
Tabla 13. Cdigo BCD 2421.

Cdigo ASCII.
Muchas aplicaciones de sistemas digitales (especialmente las computadoras o la transmisin de textos)
requieren del procesamiento de datos como nmeros, letras y smbolos especiales. Para manejar estos datos
usando dispositivos digitales, cada smbolo debe estar representado por un cdigo binario. El cdigo
alfanumrico ms generalizado en la actualidad es el denominado ASCII (American Standard Code for
Information Interchange). Este es un cdigo de 7 bit. La tabla 14, muestra una parte del cdigo ASCII.
Ejemplo 49: La palabra Start se representa en cdigo ASCII como sigue

En resumen, el cdigo ASCII consta entre otros, de los siguientes grupos de caracteres:

Pgina 26

SISTEMAS Y CDIGOS NUMRICOS

Los caracteres ASCII, se observan en la tabla 14.


Cdigo Gray.
Este es un cdigo binario no ponderado y tiene la propiedad de que los cdigos para dgitos decimales sucesivos
difiere en un slo bit. Al cdigo Gray tambin se le llama autorreflejado, o cclico. En la siguiente tabla se
muestra dicho cdigo para los nmeros del 0 al 15.
Conversin Binario-Gray
Para convertir de Binario a Gray puede seguirse el siguiente
procedimiento.
Algoritmo.
1.- El MSB se deja igual.
2.- Avanzando de MSB a LSB se suma cada bit con el siguiente
despreciando el acarreo para obtener el siguiente bit del cdigo
Gray.

Tabla 15. Cdigo Gray.

Ejemplo 50.

Escribir en Cdigo Gray el nmero 4510


Como 4510 = 1011012 Al aplicar el algoritmo a este nmero binario, tenemos:

Es decir, 4510=1 1 1 0 1 1gray


Conversin Gray-Binario
Para convertir de Gray a Binario puede seguirse el siguiente procedimiento
Algoritmo.
1.- El MSB se deja igual.
2.- Avanzando de MSB a LSB a cada bit obtenido en binario se le suma sin acarreo el siguiente bit de
cdigo Gray.

Pgina 27

SISTEMAS Y CDIGOS NUMRICOS

Ejemplo 51.

Obtener el equivalente decimal del siguiente cdigo gray: N= 011011gray


Al aplicar el algoritmo a este nmero binario, tenemos:

Es decir, N= 0100102 = 1810

Tabla 14. Cdigo ASCII.

Pgina 28

SISTEMAS Y CDIGOS NUMRICOS

Aplicacin a sensores pticos.


La principal caracterstica del cdigo gray (que slo cambia un bit entre dos cdigos consecutivos) es muy
utilizada en sensores pticos para codificar la posicin (angular o lineal) mediante discos o cintas codificadas
en gray, dependiendo del caso.
Cdigos para deteccin y correccin de errores.
Los sistemas digitales pueden cometer errores de vez en cuando. Aunque los dispositivos en circuito integrado
tales como microprocesadores, puertas lgicas o circuitos de memoria carecen de partes mviles y por lo tanto
tienen alta confiabilidad. Pero los dispositivos que tienen interaccin con partes mviles son menos confiables.
Se pueden producir errores por polvo en las cabezas lectoras de una unidad de disco. Tambin es muy comn
la ocurrencia de errores en la transmisin de datos a distancia. Los datos que se transmiten por modem (a travs
de lnea telefnica) pueden recibirse incorrectamente si la lnea tiene ruidos. Tambin las perturbaciones en el
suministro de energa elctrica pueden producir errores. En resumen, cuando se leen, escriben o transmiten
caracteres de un sitio a otro, pueden producirse errores. En esta seccin se ilustran algunos cdigos que permiten
detectar errores y, en algunos casos, incluso corregirlos.
Cdigo de paridad.
Un mtodo muy simple, pero ampliamente utilizado por su sencillez para detectar errores en transmisin de
datos consiste en aadir un bit de paridad (p) a cada carcter, normalmente en la posicin ms significativa.
En el cdigo de paridad par, el bit de paridad (p) se elige de manera que el nmero de bits 1s del dato sea un
nmero par incluyendo el bit de paridad. En el cdigo de paridad impar, el bit de paridad se elige de modo
que el nmero de bits 1s (incluyendo el de paridad) del dato sea impar.
De esta manera, cuando cambia un bit durante la transmisin, el nmero de unos en el carcter recibido tendr
la paridad equivocada y el receptor sabr que se ha producido un error.
Ejemplo 52: En la tabla 16 se muestra un cdigo de paridad par de 8 bits para los caracteres ASCII FIE.
Ejemplo 53. Si un transmisor enva la informacin
anterior y hay errores en la transmisin, suponiendo
que el receptor recibe la siguiente informacin (ver
tabla 17) se anota los datos que llegaron errneos y
si se detect o no el error, agrega en la columna vaca
cuantos bits cambiaron en la transmisin.

Tabla 16. Ejemplo de un cdigo de paridad par para los caracteres FIE
en cdigo ASCII.

Tabla 17. Ejemplo de un cdigo de paridad par para los caracteres FIE para detectar
errores.

Pgina 29

SISTEMAS Y CDIGOS NUMRICOS

Cdigo 2 de 5 (biquinario).
El cdigo 2 de 5 es un cdigo multibit no ponderado, es decir, los cdigos no pueden obtenerse usando una
expresin polinomial; este cdigo est diseado para la deteccin de errores en diferentes tipos de clculos
y operaciones con registros de corrimiento. Se usan cinco bits para representar los dgitos decimales (0-9).
Como el nombre lo indica, slo dos de los cinco bits son 1.

Ejemplo 54: Representar el numero decimal 23710 en


cdigo 2 de 5.
23710 = 00110 01001 100102 de 5

Tabla 18. Cdigo biquinario.

Cdigo de Hamming.
Richard Hamming (1950) ide un mtodo no slo para detectar errores sino tambin para corregirlos, y se
conoce como cdigo Hamming. En l se aaden k bits de paridad a un carcter de n bits, formando un nuevo
carcter de n + k bits. Los bits se enumeran empezando por 1, no por 0, siendo el bit 1, el de la izquierda, el
ms significativo. Todo bit cuyo nmero sea potencia de 2 es un bit de paridad y todos los dems se utilizan
para datos.
Para un carcter ASCII de 7 bits, se aaden 4 bits de paridad. Los bits 1, 2, 4 y 8 son bits de paridad; 3, 5, 6, 7,
9, 10 y 11 son los 7 bits de datos. Cada bit de paridad comprueba determinadas posiciones de bit y se ajusta de
modo que el nmero total de unos en las posiciones comprobadas sea par, si se trata de paridad par.
Las posiciones de los bits comprobados por los de paridad son:
El bit 1 comprueba los bits 1, 3, 5, 7, 9 y 11.
El bit 2 comprueba los bits 2, 3, 6, 7, 10 y 11.
El bit 4 comprueba los bits 4, 5, 6 y 7.
El bit 8 comprueba los bits 8, 9, 10 y 11.
En general, el bit n es comprobado por los bits b1, b2,....,bj, tales que b1 + b2 + .... + bj = n.
Por ejemplo, el bit 5 es comprobado por los bits 1 y 4 porque 1 + 4 = 5. El bit 6 es comprobado por los bits 2 y
4 porque 2 + 4 = 6.
Ejemplo 55: Usando paridad par, construir el cdigo de Hamming para el carcter "b".

Cdigo ASCII para "b"

Cdigo de Hamming para "b"

Pgina 30

SISTEMAS Y CDIGOS NUMRICOS

El carcter ASCII "b" se representa por el nmero binario 1100010. El cdigo de Hamming para "b" en binario
es 00111001010.
Considrese que pasara si el bit 1 se modificara durante la transmisin. El carcter recibido sera 10111001010
en lugar de 00111001010. El receptor comprobara los 4 bits de paridad con los resultados siguientes:
Bit de paridad 1 incorrecto (los bits 1, 3, 5, 7, 9 y 11 contienen tres unos).
Bit de paridad 2 correcto (los bits 2, 3, 6, 7, 10 y 11 contienen dos unos).
Bit de paridad 4 correcto (los bits 4, 5, 6 y 7 contienen dos unos).
Bit de paridad 8 correcto (los bits 8, 9, 10 y 11 contienen dos unos).
El nmero total de unos en los bits 1, 3, 5, 7, 9 y 11 debera de ser par, ya que se est usando paridad par. El bit
incorrecto debe ser uno de los bits comprobados por el bit de paridad 1, es decir, uno de los bits 1, 3, 5, 7, 9 u
11. Como el bit de paridad 2 es correcto, sabemos que los bits 2, 3, 6, 7, 10 y 11 son correctos, de forma que el
error no estaba en los bits 3, 7 u 11. Esto deja los bits 1, 5 y 9. El bit de paridad 4 es correcto, lo cual significa
que los bits 4, 5, 6 y 7 no contienen errores. Esto reduce la eleccin al 1 9. El bit de paridad 8 tambin es
correcto y, por lo tanto, el bit 9 es correcto. Por consiguiente, el bit incorrecto debe ser el 1. Dado que se recibi
como un 1, debera haberse transmitido como un 0. En esta forma se pueden corregir los errores.
Para resolver:
1.

Representar los siguientes nmeros en sistema decimal.


a)

3478=

b) 22013=
c)

AF216=

d) 101112=
2.

Expresar los siguientes nmeros binarios en hexadecimal.


a)

01011010111110112=

b) 100100011100001012=
c)
3.

11110000111100002=

Expresar los siguientes nmeros hexadecimales en binario.


a)

FFFF16=

b) 01AC16=
c)

55AA16=

d) 321016=
4.

Realizar las siguientes operaciones binarias.


1010
+ 0111

1010
0111

1010
+ 0101

1010
0101

Pgina 31

SISTEMAS Y CDIGOS NUMRICOS

5.

Representar la palabra TAREA en cdigo ASCII.


Cdigo ASCII
Carcter

A6

A5

A4

A3

A2

A1

A0

T
A
R
E
A

6.

Se desea transmitir la frase COMPUTADORA a travs de un dispositivo electrnico. El dispositivo


solo es capaz de reconocer el cdigo Gray. Determinar la palabra COMPUTADORA en cdigo
ASCII:
-

C
O
M
P
U
T
A
D
O
R
A

Cul es el correspondiente cdigo Gray para cada una de las letras?

7.

Construir el cdigo Hamming utilizando paridad par para la letra inicial de su nombre (Si su nombre
es Juan, la letra es J).

Pgina 32

Вам также может понравиться