2. SISTEMAS NUMERICOS Si bien el sistema de numeración binario es el más importante de los sistemas digitales, hay otros que también lo son. El sistema decimal es importante porque se usa en todo el mundo para representar cantidades que no pertenecen a un sistema digital. Esto significa que habrá situaciones en las cuales los valores decimales se deberán convertir a valores binarios antes de que ingresen al sistema digital. Además del binario y el decimal hay dos sistemas más de numeración que tienen múltiples aplicaciones en los sistemas digitales: los sistemas de numeración octal (base 8) y hexadecimal (base 16). En un sistema digital se pueden utilizar tres o cuatro de estos sistemas numéricos al mismo tiempo.
3. Conversión de Binario a Decimal El sistema numérico binario es un sistema posicional donde cada digito binario (bit) soporta un cierto peso, dependiendo de su posición relativa al LSB. Cualquier número binario se puede convertir a su equivalente decimal con sólo sumar los pesos de las diferentes posiciones en el número binario que contiene un 1. Ejemplo Convertir 110112 a su equivalente decimal. 1 1 0 1 12 24 + 23 + 0 + 21 + 20 = 16 + 8 + 2 + 1 = 2710 Convertir 101101012 a su equivalente decimal. 1 0 1 1 0 1 0 12 27 + 0 + 25 + 24 + 0 + 22 + 0 + 20 = 18110
4. Observe que el procedimiento es encontrar pesos (es decir, potencias de 2) para cada posición del bit que contenga un 1, y luego se suman. Asimismo, observe que el MSB tiene un peso de 27 (128) aunque es el octavo bit, esto se debe a que el LSB es el primer bit y tiene un peso de 20. Preguntas de repaso: Convertir 1000110110112 a su equivalente decimal. ¿Cuál es el peso del MSB de un número de 16 bits?
5. Conversión de Decimal a Binario Para convertir números enteros decimales se usa la división sucesiva entre 2, esto requiere la división repetida del número decimal entre 2 y escribir el residuo después de cada división hasta que el cociente sea 1. Ejemplo: Convertir el 2510 a base 2. 25 / 2 = 12 residuo 1 (LSB) 12 / 2 = 6 residuo 0 6 / 2 = 3 residuo 0 3 / 2 = 1 (MSB) residuo 1 Resultado: 110012 Convertir el 3710 a base 2. 37 / 2 = 18 residuo 1 18 / 2 = 9 residuo 0 9 / 2 = 4 residuo 1 4 / 2 = 2 residuo 0 2 / 2 = 1 residuo 0 Resultado: 1001012 Usando N bits se puede representar números decimales de 0 a 2N-1, un total de 2N números
6. EJEMPLOS: ¿Cuál es el rango total de valores decimales que es posible representar con ocho bits? ¿Cuántos bits se necesitan para representar valores decimales variando de 0 a 12500? Preguntas de repaso: Convertir 8310 a binario Convertir 72910 a binario. Compruebe su respuesta convirtiendo de nuevo a decimal ¿Cuántos bits se requieren para contar hasta 1 millón en decimal?
7. Sistema de numeración Octal El sistema octal se usa con frecuencia en el trabajo de computadoras digitales. Este sistema tiene una base de ocho, lo que significa que tiene ocho dígitos posibles 0, 1, 2, 3, 4, 5, 6, 7. Conversión de octal a decimal Un número octal se puede convertir fácilmente a su equivalente decimal multiplicando cada dígito octal por su peso posicional. Por ejemplo: 24.68 = 2 X 81 + 4 X 80 + 6 X 8-1 = 20.7510 3728 = 3 X 82 + 7 X 81 + 2 X 80 = 3 x 64 + 7 x 8 + 2 X 1 = 25010
8. 266 ----- = 33 + residuo de 2 8 33 ----- = 4 + residuo de 1 8 4128 Conversión de decimal a octal Un número entero decimal se puede convertir a octal usando el mismo método de la división repetida pero con un factor de división de 8 en lugar de 2. Por ejemplo Convertir 26610 a Octal.
9. Conversión de octal a binario La ventaja principal del sistema de numeración octal es la facilidad para hacer las conversiones entre números binarios y octales. Esta se realiza convirtiendo cada digito octal a su equivalente en binario de tres dígitos. Usando estas conversiones podemos cambiar cualquier número de octal a binario transformando individualmente cada dígito. Por ejemplo Convertir 4728 a binario 4 7 2 100 111 010 Por lo tanto 472 octal es equivalente a 100111010 binario
10. Convertir 54318 a binario 54 3 1 101 100 011 001 Así 54318 = 1011000110012 Conversión de binario a octal La conversión de enteros binarios a enteros octales es simplemente la operación inversa del proceso anterior. Los bits del número binario se agrupan en grupos de tres bits., iniciando con el LSB. Ejemplo 100 111 010 Transformar 1001110102 a octal. Así 1001110102 = 4728 4 7 28
11. Algunas veces el número binario no tendrá también grupos de tres bits. En estos casos podemos sumar uno o dos ceros a la izquierda del MSB. Ej: Convertir a octal 110101102 11 010 110 3 2 68 0 Conteo en octal El dígito octal mayor es 7, por lo tanto cuando se cuenta en octal, se incrementa una posición de un dígito hacia arriba de 0 a 7. Una vez que se llega a 7, se recicla a 0 en el siguiente conteo y esto causa que la siguiente posición mayor del dígito se incremente. Por ejemplo (1) 65, 66, 67, 70, 71 y (2) 275, 276, 277, 300. Con N posiciones de dígitos octales podemos contar de 0 a 8N-1, para un total de 8N conteos. Por ejemplo, con tres posiciones de dígitos octales se puede contar de 0008 a 7778 lo cual es de 010 a 51110 para un total de 83 = 51210 números octales.
12. EJEMPLO: Convertir 17710 a su equivalente a binario, convirtiendo primero a octal. Preguntas de repaso: Convertir 6148 a decimal Convertir 14610 a octal y luego de octal a binario Convertir 100111012 a octal Escriba los tres números siguientes de esta secuencia de conteo octal 624, 625, 626, ____, ____, ____. Convertir 97510 a binario pasándolo primero a octal Convertir el número binario 1010111011 a decimal transformándolo a octal ¿Qué rango de valores decimales se pueden representar mediante un número octal de cuatro dígitos?
13. SISTEMA DE NUMERACION HEXADECIMAL En este sistema se emplea la base 16, por lo tanto tiene 16 símbolos digitales posibles, estos son: del 0 al 8 más las letras de, A, B, C, D, E y F. En la siguiente tabla se mostrará las relaciones entre los sistemas hexadecimal, decimal y binario. Nótese que cada dígito hexadecimal representa un grupo de 4 dígitos binarios. Es importante recordar que los dígitos hexadecimal A a F son equivalentes a los valores decimales del 10 al 15.
14. Conversión de hexadecimal a decimal Un número hexadecimal se puede convertir a su equivalente decimal partiendo del hecho de que cada posición de los dígitos hexadecimales tiene un peso que es una potencia de 16. El LSD tiene un peso de 160=1; la siguiente posición mayor del dígito tiene un peso de 161=16 y así sucesivamente. Ejemplo: 35616 = 6 X 160 + 5 X 161 + 3 X 162 = 6 + 80 + 768 = 85410 2AF16 = 15 X 160 + 10 X 161 + 2 X 162 = 15 + 160 + 512 = 68710 Observe que en el segundo ejemplo la letra A fue sustituida por 10, y la F por el valor de 15. Verifique que 1BC216 es igual a 710616
15. Conversión de decimal a hexadecimal Recuerde que la conversión de decimal a binario se hizo usando la división repetida entre 2, y la decimal a octal mediante la división entre 8. de la misma manera, la conversión de decimal a hex se realiza. Ejemplo: Convertir 42310 a hex Convertir 21410 a hex 423 ----- = 26 residuo 7 16 26 --- -- = 1 residuo 10 16 214 ----- = 13 residuo 6 16 Observe que cualquier valor mayor que 9 se representa mediante las letras A a la F Solución: D616 Solución: 1A716
16. Conversión de hex a binario Al igual que el sistema de numeración octal, el sistema de numeración hexadecimal se usa principalmente como un método “taquigráfico” para representar números binarios. Cada dígito hex se convierte a su equivalente binario de cuatro dígitos. Ejemplo: Convertir 9F216 a binario 9F216 = 9 F 2 1001 1111 0010 = 1001111100102
17. Conversión de binario a hex La conversión de binario a hex es exactamente el inverso del proceso anterior. El número binario se agrupa en conjuntos de cuatro bits y cada conjunto se convierte a su digito equivalente hex. Los ceros se agregan, según sea necesario, para completar un conjunto de cuatro bits. Ejemplo: Convertir 11101001102 a hex. 11101001102 = 0110 1010 11 00 3 A 6 = 3A616
18. NOTA: Con el fin de realizar estas conversiones entre hex y binario, es necesario conocer los números binarios de cuatro bits (0000 – 1111) y sus dígitos hex equivalentes. Una vez que éstos se dominan bien, podemos hacer rápidamente las conversiones sin necesidad de realizar ningún cálculo. Por esta razón el sistema hex (y el octal) son tan útiles para representar números binarios grandes. Verifique que 1010111112 = 15F16
19. CONTEO EN HEXADECIMAL Cuando se cuenta en hex cada posición de los dígitos se puede incrementar (en 1 unidad) de 0 a F. Cuando la posición de un dígito alcanza el valor de F, se vuelve a fijar a 0 y se incrementa la siguiente posición del dígito. Ejemplo 38 39 3A 3B 3C 3D 3E 3F 40 41 42 6F8 6F9 6FA 6FB 6FC 6FD 6FE 6FF 700
20. Preguntas de repaso: Convertir 24CE16 a decimal Convertir 311710 a hex, luego de hex a decimal Convertir 10010111101101012 a hex Escriba los cuatro números siguientes en esta secuencia de conteo hex: E9A, E9B, E9C, E9D, ____, ____, ____, ____ Convertir 35278 a hex ¿Qué rango de valores decimales se puede representar mediante un número hex de cuatro dígitos?