SISTEMAS NUMERICOS “Introducción a la Programación” Rolando Montero
Introducción ¿Qué sistema numérico usa el computador? Se ha modelado una nueva “realidad”: sólo 1’s y 0’s Si realiza operaciones aritméticas con números válidos en el sistema binario, ¿qué sistema numérico tendrán los resultados de esas operaciones?
Sistema Decimal Sistema numérico cuyas posiciones aumentan en potencias de 10 cuanto más a la izquierda se encuentre, teniendo el dígito de menor peso el valor de 0. Estructura de un número decimal: a n *10 n + …+ a 3 * a 2 * a 1 *10 1 +a 0 *10 0
Sistema Decimal 10 n Valor posicional de los dígitos. a n a 4 a 3 a 2 a 1 a 0 Número decimal (0 – 9). Ejemplo: 345 = 3 x x x 10 0 = 3 x x x 1 = 345.
Sistema Binario Sistema numérico binario o de base 2, tiene los mismos conceptos que en el decimal, pero en vez de potencias de 10 éstas son de 2. Estructura de un número binario: a n *2 n +..+a 4 *2 4 + a 3 *2 3 + a 2 *2 2 + a 1 *2 1 +a 0 *2 0
Sistema Binario 2 n Valor posicional de los dígitos. a n a 4 a 3 a 2 a 1 a 0 Número binario (0 – 1). Ejemplo: 1101 =1x x x x2 0 = = (13) 10
Sistema Binario Ejemplo: pesos de los dígitos Cantidad = = 11. Es decir que el número binario será el resultado de la suma de los estados a nivel lógico "1" de la expresión binaria.
Sistemas de numeración Los dígitos “p” siempre debe ser menor a su base “b”, o sea p<b
Conversión de Código Código: Conjunto de bits ordenados de acuerdo a un modelo que se emplea para representar información. Conversor de código: Cambia el formato de una información codificada a otro formato de código.
Conversión Binario a Decimal En la conversión binario-decimal, debemos tener en cuenta los pesos de los dígitos (basta con sumar los estados que contienen un “1”). Ejemplo: número binario N=1x x x x x2 0 = = (23) 10
Conversión Binario a Decimal Otra forma más sencilla consiste en escribir los pesos correspondientes a los 5 bits y situar los estados de bit debajo, el resultado será la suma de los pesos de los bits a ¨1¨ pesos ( ) 2 = = (23) 10
Conversión Decimal a Binario Para realizar la conversión, deberemos realizarla mediante la división de N por 2, y el cociente del resultado, deberemos dividirlo también por 2, hasta llegar a un cociente que sea menor de 2. El número binario será el conjunto de los restos de las divisiones y el último cociente, en orden inverso de aparición.
Conversión Decimal a Binario Ejemplo: número decimal / 2 = 29 resto: 0 (LSB) ; 29 / 2 = 14 resto: 1 14 / 2 = 7 resto: 0; 7 / 2 = 3 resto: 1 3 / 2 = 1 resto: 1; 1 / 2 = 0 resto: 1 (MSB) => 58 =
Conversión Decimal a Binario Ejercicio: Realice las siguientes conversiones: (93) 10 = (…) 2 (135) 10 = (…) 2 (256) 10 = (…) 2 …y viceversa ( ) 2 ( ) 2 ( ) 2
Conversión Decimal Fraccionario a Binario Se separa la parte entera de la fraccional La parte entera se convierte a binario según el procedimiento habitual. La parte fraccionaria se realiza multiplicando por 2 dicho número. Se considera la parte entera como el número binario resultante (puede ser 0 ó 1).
Conversión Decimal Fraccionario a Binario Si la parte entera resultante es 1, se cambia a cero. La parte fraccionaria del resultado también se multiplica por 2, así como todas las partes fraccionarias de los resultados que vayan apareciendo. El proceso continúa hasta que no haya parte fraccionaria o hasta que la fracción interese.
Conversión Decimal Fraccionario a Binario Las partes enteras de cada uno de los resultados de las multiplicaciones constituyen el número binario.
Conversión Decimal Fraccionario a Binario Ejemplo: número decimal 12,6543. Parte entera 12 / 2 = 6 resto: 0 6 / 2 = 3 resto: 0 3 / 2 = 1 resto: 1 1 / 2 = 0 resto: 1 Parte fraccionaria 0,6543 x 2 = 1,3086 0,3086 x 2 = 0,6172 0,6172 x 2 = 1,2344 0,2344 x 2 = 0,4688 Resultado: ,
Conversión Decimal Fraccionario a Binario Ejercicio: Realice las siguientes conversiones: (32,64) 10 = (…) 2 (24,12) 10 = (…) 2 … y viceversa … (…) 2 = (…) 10
Conversión Decimal Fraccionario a Binario Ejercicio: Complete la siguiente tabla, realizando las conversiones que corresponda. BinarioOctalDecimalHexadecimalBase
Conversión Binario a Hexadecimal En la base hexadecimal tenemos 16 dígitos que van del 0 al 9 y de la letra A hasta la F (estas letras representan los números del 10 al 15). Por lo tanto, contamos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F. Dividir en grupos de 4 bits, empezando de derecha a izquierda. En caso de que el último grupo (el que quede más a la izquierda) sea menor de 4 bits se rellenan los faltantes con ceros. Convertir cada grupo de 4 bits en su equivalente hexadecimal
Conversión Binario a Hexadecimal Ejemplo: Lo dividimos en grupos de 4 bits y nos queda: Rellenando con ceros el último grupo (el de la izquierda): equivale a 2, mientras que 1011 equivale a B Resultado: 2B h (16=h=hexadecimal)
Conversión Hexadecimal a Binario Se toma el primer dígito hexadecimal y se convierte a binario, y luego el segundo, y así sucesivamente hasta completar el número. Ejemplo: 3C h 3 = 0011 C = 1100 Resultado:
Conversión Hexadecimal a Binario Ejercicio: Realice las siguientes conversiones: (F6) 16 = (…) 2 (4B8) 16 = (…) 2 ( ) 2 = (…) 16
Ejercicios Convierta los siguientes números decimales a binario: 55 = 49 = Ejecute las siguientes conversiones de base: ( ) 2 = (...) 8 (32) 6 = (...) 2
Ejercicios Determine si las siguientes sentencias son correctas: (1101) 2 = (9) 10 (1101) 2 > (11) 10
Conversiones Convertir ( ) 2 a decimal. Solución: =1*2 7 +0*2 6 +0*2 5 +1*2 4 +0*2 3 +1*2 2 +1*2 1 +0*2 0 = =150
Conversiones Convertir ( ) 2 a hexadecimal. Solución: = = 9 6 ( ) 2 = 96 h
Conversiones Convertir (35) 10 a base 3. Solución: 35/3 = /3 = 3 2 3/3 = 1 0 1/3 = =
Conversiones Convertir (122) 3 a binario. Solución recomendada: Se convierte primero a decimal y luego a binario = 1*3 2 +2*3 1 +2*3 0 = = 17 17/2 = 8 1 8/2 = 4 0 4/2 = 2 0 2/2 = 1 0 1/2 = =
Conversiones Convertir (142) 10 a hexadecimal. Solución: 142/16 = /16 = = 8E h
Conversiones Convertir ( ) 2 a decimal. Solución: Parte entera: =1*2 5 +1*2 4 +0*2 3 +1*2 2 +0*2 1 +1*2 0 = =53 Parte fraccionaria:.1011 =1* * * *2 -4 = = Final:
Conversiones Convertir ( ) 10 a binario Solución: Parte entera: = Parte fraccionaria: * 2 = * 2 = * 2 = * 2 = 1.0 = ( ) 10 =
Conversiones Convertir (25.5) 10 a base 3 Solución: Parte entera: = (25/3=8, resto 1; 8/3=2, resto 2; 2/3=0, resto 2) Parte fraccionaria: * 3 = 1.5 =.11 (25.5) 10 =