Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INTRODUCCIN
El sistema de numeracin binario y los cdigos digitales son fundamentales en las computadoras y, en general, en la electrnica digital. Esta unidad est enfocada principalmente al sistema de numeracin binario y sus relaciones con otros sistemas de numeracin tales como el decimal, hexadecimal y octal. Se cubren las operaciones aritmticas con nmeros binarios con el fin de proporcionar una base para entender cmo trabajan las computadoras y muchos otros tipos de sistemas digitales. Tambin se abordan cdigos digitales como el cdigo decimal binario (BCD, Binary Code Decimal), el cdigo Gray y el ASCII. Se presenta el mtodo de paridad para la deteccin de errores en los cdigos y se describe un mtodo para corregir dichos errores.
NMEROS DECIMALES
Todos estamos familiarizados con el sistema de numeracin decimal porque los usamos cada da. Aunque los nmeros decimales son triviales, a menudo, su estructura de pesos no se comprende. En lo sucesivo, revisaremos la estructura de los nmeros decimales. Esto ayudar a entender ms fcilmente la estructura del sistema de numeracin binario, que es tan importante en las computadoras y la electrnica digital.
NMEROS DECIMALES
A la posicin de cada nmero en un sistema de numeracin posicional se le asigna un peso basado en la base o radix del sistema. El radix de los nmeros decimales es 10, porque slo se utilizan 10 smbolos (de 0 a 9) para representar cualquier nmero. Los pesos de las columnas de nmeros decimales son potencias de 10 que se incrementan de derecha a izquierda empezando por 100 =1.
NMEROS DECIMALES
Los nmeros decimales se pueden expresar como la suma de productos de cada dgito por los valores de las columnas (potencias de 10) para ese dgito. As, el nmero 9240 se puede expresar como:
NMEROS BINARIOS
El sistema de numeracin binario es simplemente otra forma de representar magnitudes. El sistema binario es menos complicado que el decimal ya que solo tiene dos dgitos. Al principio puede parecer complicado por no ser familiar. El sistema decimal con sus diez dgitos es un sistema en base diez, el sistema binario con sus dos dgitos es un sistema en base dos. Los dos dgitos binarios (bits) son 1 y 0. La posicin de un 1 o un 0 indican su peso o valor en un nmero de la misma manera que en el sistema decimal.
NMEROS BINARIOS
Para los sistemas digitales, se utiliza el sistema de numeracin binario. El sistema binario tiene un radix de 2 y utiliza los dgitos 0 y 1 para representar cantidades. Los pesos de columna para nmeros binarios son potencias de 2 que aumentan de derecha a izquierda empezando por 20 =1.
25 24 23 22 21 20.
Para nmeros binarios fraccionales, los pesos de las columnas son potencias negativas de 2 que disminuyen de izquierda a derecha.
NMEROS BINARIOS
A la derecha se muestra una secuencia de conteo binario para los nmeros decimales de 0 a 15. Observe los patrones de ceros y unos de cada columna. Los Contadores Digitales tienen comnmente el mismo patrn de dgitos.
Counter 0 0 0 0 1 0 0 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 1 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 0 1 Decoder
Nmero Decimal
Nmero Binario
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Convertir el nmero binario 100101.01 a decimal. Comience por escribir la columna de pesos; luego sumar los pesos que corresponden a cada 1 en el nmero.
Poner 1s en las posiciones de pesos adecuadas de tal manera que la suma corresponda al nmero decimal. 26 25 24 23 22 21 20. 64 32 16 8 4 2 1. 0 1 1 0 0 0 1.
Convertir el nmero decimal 49 a binario dividiendo repetidamente por 2. Se puede hacer por divisin en reversa y la respuesta se leer de izquierda a derecha. Poner cuocientes a la izquierda y restos encima.
Respuesta:
resto 1 1 0 0 0 1 0 1 3 6 12 24 49 2 Cociente Nmero decimal base
Convertir el decimal fraccionario 0.188 a binario multiplicando los resultados fraccionales por 2.
0.188 x 2 = 0.376 0.376 x 2 = 0.752 0.752 x 2 = 1.504 0.504 x 2 = 1.008 0.008 x 2 = 0.016
MSB
ARITMTICA BINARIA
La aritmtica binaria es esencial en todas las computadoras digitales y en muchos otros tipos de sistemas digitales. Para entender los sistemas digitales, debe conocer los principios bsicos de la suma, resta, multiplicacin y divisin binarias. En lo sucesivo se introducen estos temas.
SUMA BINARIA
Las reglas bsicas para la suma binaria son:
0+ 0+ 1+ 1+
0= 1= 0= 1=
0 1 1 10
0 0 0 1
Cuando hay un acarreo de entrada = 1 debido a un resultado previo, las reglas son:
1+ 1+ 1+ 1+
0 + 0 = 01 0 + 1 = 10 1 + 0 = 10 1 + 1 = 11
SUMA BINARIA
Sumar los nmeros binarios 00111 y 10101 y mostrar la suma decimal equivalente.
0111
RESTA BINARIA
Las reglas bsicas para la resta binaria son:
21 00111 7 01110 = 14
MULTIPLICACIN BINARIA
Las reglas bsicas para la multiplicacin binaria son:
MULTIPLICACIN BINARIA
Multiplicar el nmero binario 110100010101 con 1101.
334913 = 43537
DIVISIN BINARIA
Estudiar del libro base
COMPLEMENTO A 1
El complemento a 1 de un nmero binario es solo la inversin de los dgitos. Para formar el complemento a 1, cambiar todos los 0s a 1s y todos los 1s a 0s.
COMPLEMENTO A 2
El complemento a 2 de un nmero binario se obtiene sumando 1 al LSB del complemento a 1.
Recordamos que el complemento a 1 de 11001010 es 00110101 (complemento a 1) Para formar el complemento a 2, sumar 1: +1 00110110 (complemento a 2)
1 1 0 0 1 0 1 0 1 0 0 1 1 0
Input bits Adder Output bits (sum) Carry in (add 1)
COMPLEMENTO A 2
Un mtodo alternativo para obtener el complemento a 2 de un nmero binario es el siguiente: 1. Se empieza por la derecha con el LSB y se escriben los bits como estn hasta encontrar el primer 1, incluido ste.
Los nmeros no enteros y muy grandes o muy pequeos pueden expresarse en formato de coma flotante.
BIT DE SIGNO
El bit ms a la izquierda de un nmero binario con signo es el bit de signo, que indica si el nmero es positivo o negativo. Un bit se signo 0 indica que es un nmero positivo y un bit de signo igual a 1 indica que es un nmero negativo.
El -25 se expresa como 10011001 (forma real). bit de Signo bits de Magnitud
Por ejemplo, con ocho bits, el nmero decimal -25 se expresa como el complemento a 1 de +25 (00011001) como 11100110.
Por ejemplo, con ocho bits, el nmero decimal -25 se expresa como el complemento a 2 de +25 (00011001) como 11100111.
Determinar el valor decimal del nmero binario con signo expresado como signo-magnitud 10010101: Pesos de columnas: 64 32 16 8 4 2 1. 0 0 1 0 1 0 1 16 + 4 + 1 = -21
Determinar los valores decimales de los nmeros binarios con signo expresados en complemento a 1:
a) 00010111
b) 11101000
Determinar los valores decimales de los nmeros binarios con signo expresados en complemento a 2: a) 01010110 b) 10101010
-(2n-1)
+(2n-1-1)
Habiendo en cada caso un bit de signo y n-1 bits de magnitud. Por ejemplo, con cuatro bits pueden representarse nmeros en complemento a 2 en el rango de (23) = -8 hasta +(23 - 1) = +7. Igualmente, con ocho bits, se pueden abarcar desde -128 hasta +127; con 16 bits se puede ir desde 32.768 a 32.767, y as sucesivamente
F (23 bits)
Mantisa (parte fraccionaria, F)
En notacin cientfica, c = 1.0001 1101 1110 1001 0101 1100 0000 x 228. S = 0 porque el nmero es positivo. E = 28 + 127 = 15510 = 1001 10112. F son los siguientes 23 bits descartando el primer 1.
En notacin de punto flotante, c = 0 10011011 0001 1101 1110 1001 0101 110
SUMA
Los dos nmeros en una suma se denominan sumandos. El resultado es la suma. Cuando se suman dos nmeros binarios con signo pueden producirse cuatro casos: 1. Ambos nmeros son positivos.
SUMA
Caso 1: Ambos nmeros son positivos. 00000111 7 00000100 4 000 010 11 = 11
01 0 0
Caso 2: El nmero positivo es mayor que el nmero negativo en valor absoluto. 00001111 15 + 11111010 + -6 1 000010 01 = 9
11111 1 0
Descartar acarreo
El bit de acarreo final no se tiene en cuenta. La suma es positiva y, por tanto, es un nmero binario real (no complementado).
SUMA
Caso 3: El nmero negativo es mayor que el nmero positivo en valor absoluto. + 00010000 16 11101000 + -24 111110 00 = -8
0000 00 0
El bit de acarreo final no se tiene en cuenta. La suma es negativa y, por tanto, est en complemento a 2.
Descartar acarreo
En una computadora, los nmeros negativos se almacenan en formato complemento a 2, por lo que, como se pudo apreciar, el procedimiento de suma es muy sencillo:
sumar los dos nmeros y descartar cualquier bit de acarreo final
+
Signo y magnitud incorrecta
En el ejemplo anterior, la suma 183 requiere 8 bits de magnitud. Puesto que los nmeros tienen slo 7 bits de magnitud, se produce un acarreo en el bit de signo que da lugar a la indicacin de desbordamiento.
RESTA
La resta es un caso especial de la suma. Por ejemplo: restar +6 (el sustraendo) de +9 (el minuendo) es equivalente a sumar -6 a +9. Bsicamente, la operacin de resta consiste en cambiar el signo del sustraendo y sumarlo al minuendo. El resultado de una resta se denomina diferencia. El signo de un nmero binario positivo o negativo se cambia tomando su complemento a 2.
Puesto que la sustraccin o resta es simplemente una suma con el signo del sustraendo cambiado, el proceso se define del siguiente modo: Para restar dos nmeros con signo, se calcula el complemento a 2 del sustraendo y se suman. Cualquier bit de acarreo final se descarta.
RESTA
MULTIPLICACIN
Los nmeros en una multiplicacin se denominan multiplicando, multiplicador y producto. La siguiente multiplicacin decimal ilustra estos trminos. Comnmente, la operacin de multiplicacin se realiza utilizando la suma. (Recordar que la resta igual se hace como una suma). Existen dos mtodos para realizar la multiplicacin de nmeros con signo. Ellos son:
MULTIPLICACIN
Mtodo 1. En el mtodo de la suma directa, se suma el multiplicando un nmero de veces igual al multiplicador. Mtodo no eficiente ya que si el multiplicador es muy grande, la suma ser muy larga. Mtodo 2. El mtodo de los productos parciales es el ms comn ya que es la forma de multiplicar manualmente. El signo del producto de una multiplicacin depende de los signos del multiplicando y del multiplicador, de acuerdo con las dos reglas siguientes: Si son del mismo signo, el producto es positivo. Si son de diferente signo, el producto es negativo.
MULTIPLICACIN
El procedimiento del mtodo se resume a continuacin:
1. Paso 1. Determinar si los signos del multiplicando y el multiplicador son diferentes. As determinamos el signo del producto. 2. Paso 2. Poner cualquier nmero negativo en formato real (no complementado). Puesto que la mayora de las computadoras almacenan los nmeros negativos en complemento a 2, se requiere esta operacin para obtener el nmero negativo en formato real. 3. Paso 3. Empezar por el bit del multiplicador menos significativo y generar los productos parciales. Cada producto parcial debe desplazarse un bit a la izquierda. 4. Paso 4. Sumar cada producto parcial a la suma de los productos parciales anteriores para obtener el producto final. 5. Paso 5. Si el bit de signo que se haba determinado en el paso 1 es negativo, calcular el complemento a 2 del producto. Si es positivo, dejarlo en formato real. Aadir el bit de signo al producto.
MULTIPLICACIN
Multiplicar los siguientes nmeros con signo: 1. 01010011 (multiplicando) 11000101 (multiplicador). 2. Verificar que la multiplicacin es correcta convirtiendo los binarios a decimales y realizando la multiplicacin.
MULTIPLICACIN
MULTIPLICACIN
DIVISIN
Los nmeros en una divisin se denominan dividendo, divisor y cociente. En los computadores, la operacin de divisin se lleva a cabo usando la resta. Puesto que la resta se puede realizar como una suma, la divisin tambin se puede llevar a cabo con un sumador. El signo del cociente depende de los signos del dividendo y del divisor, de acuerdo con las dos reglas siguientes: 1. Si son del mismo signo, el cociente es positivo. 2. Si son de diferente signo, el cociente es negativo.
DIVISIN
El procedimiento para dividir dos nmeros se resume a continuacin: 1. Paso 1. Determinar si los signos del dividendo y el divisor son diferentes. Esto determina que signo tendr el cociente. Inicializar el cociente a cero. 2. Paso 2. Restar el divisor del dividendo utilizando la suma en complemento a 2, para obtener el primer resto parcial, y sumar 1 al cociente. Si este resto parcial es positivo, ir al paso 3. Si el resto parcial es cero o negativo, la divisin se ha terminado. 3. Paso 3. Restar el divisor del resto parcial y sumar 1 al cociente. Si el resultado es positivo, repetir el siguiente resto parcial. Si el resultado es cero o negativo, la divisin se ha terminado. Continuar restando el divisor del dividendo y los restos parciales hasta que el resultado sea cero o negativo. Contar el nmero de veces que se ha restado el divisor y se obtendr el cociente.
DIVISIN
Dividir los siguientes nmeros con signo: 1. 01100100 (dividendo) 00011001 (divisor). 2. Verificar que la divisin es correcta convirtiendo los binarios a decimales y realizando la divisin.
DIVISIN
DIVISIN
NMEROS HEXADECIMALES
El sistema de numeracin hexadecimal consta de diecisis dgitos y se usan fundamentalmente como una forma simplificada de representar o escribir los nmeros binarios, ya que es muy fcil la conversin entre binario y hexadecimal. Los nmeros binarios largos son difciles de leer y escribir, ya que es fcil omitir o trasponer un bit. La representacin hexadecimal ayuda a solventar esta limitante al reducir la cantidad de smbolos en la notacin. El sistema hexadecimal se usa frecuentemente en computadoras y aplicaciones de microprocesadores.
NMEROS HEXADECIMALES
La representacin Hexadecimal usa diecisis caracteres para representar nmeros: los nmeros del 0 al 9 y los caracteres alfabticos de la A a la F. Para contar en hexadecimal por sobre la F, sencillamente se inicia otra columna y se contina de la siguiente manera. 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F, 20, 21, 22, .
Decimal
Hexadecimal
Binario
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0001 11002 = 24 + 23 + 22 = 16 + 8 + 4 = 2810 Otro mtodo para convertir un nmero hexadecimal a su equivalente decimal es multiplicar el valor decimal de cada dgito hexadecimal por su peso, y finalmente, realizar la suma de estos productos. B2F816 = (Bx4096) + (2x256) + (Fx16) + (8x1) = (11x4096) + (2x256) + (15x16) + (8x1) = 45056 + 512 + 240 + 8 = 4581610
=A =8 =2
LSB
Resultado final = 2 8 A
SUMA HEXADECIMAL
Cuando se suman dos nmeros hexadecimales se usan las siguientes reglas: 1. En cualquier columna dada de una suma, pensar en los dos dgitos hexadecimales en trminos de su valor decimal. Por ejemplo, 516 = 510, C16 = 1210. 2. Si la suma de los dos dgitos es 1510 o menor, reducir al dgito hexadecimal correspondiente. 3. Si la suma de los dgitos es mayor que 1510, hay que reducir la suma que excede de 1610 y pasar el acarreo de 1 a la siguiente columna.
SUMA HEXADECIMAL
NMEROS OCTALES
Octal usa ocho caracteres, los nmeros del 0 al 7 para representar los nmeros. No existe el caracter 8 o 9 en octal. Los nmeros binarios se pueden convertir fcilmente a octal al agrupar bits de a 3 y escribiendo el carcter octal equivalente para cada grupo. Expresar 1 001 011 000 001 1102 en octal: Agrupar los nmeros binarios de a 3bits comenzando desde la derecha. De esta manera, 1130168
Decimal
Octal
Binario
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
NMEROS OCTALES
Octal tambin es un sistema de numeracin ponderado. Los pesos de las columnas son potencias de 8, las cuales se incrementan de derecha a izquierda. Pesos de columna
Decimal
Octal
Binario
83 82 81 80 512 64 8 1
. .
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Decimal
Binario
BCD
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0001 0000 0001 0001 0001 0010 0001 0011 0001 0100 0001 0101
Cules son los pesos de las columnas para el nmero BCD 1000 0011 0101 1001?
8000 4000 2000 1000 800 400 200 100 80 40 20 10 8 4 2 1
Observe que se podra agregar los pesos de las columnas donde hay un 1 para obtener el nmero decimal equivalente. Para este caso: 8000 + 200 +100 + 40 + 10 + 8 +1 = 835910
SUMA EN BCD
BCD es un cdigo numrico y puede utilizarse en operaciones aritmticas. Veremos slo la suma en BCD ya que las otras tres operaciones pueden llevarse a cabo utilizando la suma. Los pasos son los siguientes:
1. Paso 1. Sumar los dos nmeros BCD utilizando las reglas de la suma binaria vistas en las clases anteriores.
2. Paso 2. Si una suma de 4 bits es igual o menor que 9, es un nmero BCD vlido. 3. Paso 3. Si una suma de 4 bits es mayor que 9, o si genera un acarreo en el grupo de 4 bits, el resultado no es vlido. En este caso, se suma 6 (0110) al grupo de 4 bits para saltar as los seis estados no vlidos y pasar al cdigo BCD. Si se genera un acarreo al sumar 6, este se suma al grupo de 4 bits siguientes.
SUMA EN BCD
Ejemplo sin acarreos
SUMA EN BCD
Ejemplos con acarreos
CDIGO GRAY
El cdigo Gray es un cdigo sin ponderacin que cambia slo un bit entre una palabra de cdigo y la siguiente en una secuencia. El cdigo Gray se utiliza para evitar problemas en sistemas donde un error puede ocurrir si ms de un bit cambia en una transicin en secuencia.
Decimal
Binario
Cod. Gray
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000
CDIGO GRAY
Un mecanismo codificador de eje es una aplicacin tpica. Tres detectores/emisores de infrarrojo IR se utilizan para codificar la posicin del mecanismo. El codificador de la izquierda usa codificacin binaria y puede tener 3-bits que cambian a la vez, lo cual genera una potencial fuente error. El codificador de la derecha usa cdigo gray y solamente cambia 1-bit en cada transicin, eliminando los errores del sistema.
Secuencia binaria
CDIGO ASCII
ASCII es un cdigo de caracteres alfanumricos y caracteres de control. En su forma original, ASCII codifica 128 caracteres y smbolos usando 7 bits. Los primeros 32 caracteres son caracteres de control, que fueron originalmente requeridos para sistemas teletipo. Hoy en da, estos caracteres estn generalmente asignados a otras funciones ms modernas. En 1981, IBM introdujo el cdigo ASCII extendido, el cual es un cdigo de 8-bit y se aumento entonces el conjunto de caracteres a 256. Otros conjuntos de caracteres extendidos (tal como Unicode) se han introducido para manejar caracteres que entiendan lenguajes distintos al Ingls.
CDIGO ASCII
0 0101
Cdigo BCD
Si se produce un error en el tercer bit de la izquierda (el 1 se transmite como 0). Bit de paridad par 0 0001
Bit errneo
Cuando se recibe este cdigo, la circuitera de comprobacin de paridad determina que slo hay un 1 (impar), cuando debera haber un nmero par de 1s. Puesto que en el cdigo recibido no aparece un nmero par de 1s, esto indica que se ha producido un error.
2 d p 1
Colocacin de los bits de paridad en el cdigo. Los bits de paridad se sitan en las posiciones que se han numerado hacindolas corresponder con las potencias de dos en sentido ascendente(1,2,4,8,) como sigue:
P1 , P2 , D1 , P3 , D2 , D3 , D4
Asignacin de los valores de los bits de paridad. Para terminar, hay que asignar apropiadamente un valor de 1 o de 0 a cada uno de los bits de paridad. Para ello se debe confeccionar la tabla siguiente:
Una representacin de nmeros basada en notacin cientfica en la que el nmero se compone de un exponente y una mantisa. Un sistema numrico en base 16.
Un sistema numrico en base 8. Decimal codificado en binario; un cdigo digital en el que cada uno de los dgitos decimales, del 0 al 9, se representa por un grupo de cuatro bits.
ASCII Cdigo estndar americano para el intercambio de informacin; es el cdigo alfanumrico ms ampliamente utilizado. Paridad En relacin a los cdigos binarios, la condicin de paridad par o impar est en el nmero de 1s en un grupo de cdigo. Comprobacin de la Un tipo de cdigo de deteccin de errores. redundancia cclica (CRC)
CONCLUSIONES DE LA UNIDAD
Vimos los distintos tipos de representacin numrica, especialmente los sistema de numeracin posicional caracterizado por los pesos de los dgitos segn la posicin que adoptan en el nmero. Vimos como convertir nmeros representados en un sistema de numeracin a otro. Especialmente, vimos los sistemas decimal, binario, hexadecimal y octal. Vimos la aritmtica asociada a cada uno de estos sistemas de representacin con nmeros en formato real y formato con signo. Vimos la estructura de los cdigos binarios ms utilizados en sistemas digitales. Estos son: cdigo BCD (8421), GRAY y ASCII. Vimos un mtodo para comprobar o detectar posibles errores de transmisin en nmeros binarios y la manera de corregirlos.
BIBLIOGRAFA
Libro base: Fundamentos de Sistemas Digitales. Autor: Tomas L. Floyd. Libro complemento: Principios de Diseo Digital. Autor: Daniel D. Gaski.