Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ndice
l
Aritmtica Binaria
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Los nmeros con signo tienen dos partes: signo y magnitud Es necesario codificar el signo del nmero para poder representarlo utilizando slo 0s y 1s:
positivos y un 1 para nmeros negativos
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
El MSB es el signo (0 si es positivo o 1 si es negativo) El resto de los bits son la magnitud del nmero a representar,
Ejemplos:
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Complemento a 1
l
Si el nmero es positivo:
Si el nmero es negativo:
l
El MSB es un 0 (signo) El resto de los bits son la magnitud en binario natural El MSB es un 1 (signo) El resto de los bits son el complemento (a 1) de la magnitud
+2510 = 011001Ca1 -2510 = 100110Ca1
Ejemplos:
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Complemento a 2
l
Si el nmero es positivo:
El MSB es un 0 (signo) El resto de los bits son la magnitud en binario natural El MSB es un 1 (signo) El resto de los bits son el complemento a 2 de la magnitud. El complemento a dos de un nmero es su complemento + 1
Si el nmero es negativo:
Ca 2( A) = A + 1
Ca 2( A) = 2n A
(2 n A = 2 n 1 + 1 A = 11.... 11 A + 1 = A + 1)
Ejemplos:
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Complemento a 2
l
No hay que confundir los conceptos de operacin de complementar a 2 y representacin en complemento a 2 de un nmero:
La representacin en complemento a 2 es la ms utilizada en los sistemas digitales para nmeros con signo.
7
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
En SM:
En Ca1 y Ca2:
Aadir ceros justo despus del signo Si es positivo aadir ceros a la izquierda Si es negativo aadir unos a la izquierda
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Complemento a 2
Codificacin 0 0 0 0 1 1 1 1
l l
SM 0 1 2 3 -0 -1 -2 -3
Ca1 0 1 2 3 -3 -2 -1 -0
Ca2 0 1 2 3 -4 -3 -2 -1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
En SM y en Ca1 hay dos codificaciones distintas que representan el 0 En Ca2 la representacin del 0 es nica
9
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Complemento a 2
l
Otra propiedad del Ca2 es que el complemento a 2 del complemento a 2 de un nmero es el mismo nmero (la operacin inversa del Ca2 es el propio complemento a 2):
Ca2(Ca2(ACa2 )) = A Ca2
Dem: Ca2(Ca2( ACa 2 )) = 2 n - (Ca2( ACa 2 )) = 2 n (2 n ACa 2 ) = ACa 2
l
Ejemplo:
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Complemento a 2
l
Empezando por el LSB, dejar iguales los bits hasta encontrar el primer 1 e invertir el resto: Ca2(11100100) =00011100
Comprobacin: Ca2(11100100) = 00011011 + 1 = 00011100
11102 = 1*(-23) + 1*22 + 1*21 + 0*20 = -8 + 4 + 2 = -210 01102 = 0*(-23) + 1*22 + 1*21 + 0*20 = 4 + 2 = 610 Si A es positivo el peso del signo ser cero, y por tanto la magnitud es la suma del resto de pesos Si A es negativo el peso ser -2n, y por tanto el nmero que se obtendr es: -2n + A = -Ca2(A) = -(-A) = A
Demostracin:
l
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
11
Suma binaria
l
Las sumas de nmeros naturales en binario se realizan igual que en decimal: 1001 (9)
+ 1101 (13) 10110 (22)
Utilizando la representacin de los nmeros en Ca2, el mtodo es vlido tambin para nmeros con signo, si se siguen las siguientes reglas.
Operandos con el mismo nmero de bits Se descarta el acarreo final Si los dos operandos tienen el mismo signo, y el resultado de la operacin tiene signo diferente el resultado no es vlido. Se dice que hay desbordamiento ( overflow ):
Esto sucede porque hara falta un bit adicional para poder representar el resultado.
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
12
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
13
Resta binaria
l
Para realizar restas binarias se utiliza la propiedad vista anteriormente del complemento a 2:
En los sistemas digitales se representan los nmeros con signo en Ca2, y no se utilizan restadores (no hacen falta), slo sumadores
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
14
Multiplicacin binaria
l
Las multiplicaciones en binario se realizan de forma similar a las multiplicaciones en decimal: 1001 (9)
1101 (13) 1001 0000 1001 1001______ 1110101 (117)
Si los dos nmeros son positivos, se realiza directamente la operacin. Al resultado se aade un bit de signo 0 (el resultado es un nmero positivo). Si los dos nmeros son negativos, se complementan a 2, se multiplican y al resultado se aade un bit de signo 0 (el resultado es un nmero positivo). Si uno de los nmeros es negativo, se hace el Ca2 de ese nmero, se multiplica por el otro, y al resultado se le realiza el Ca2 y se le aade un bit de signo 1 (el resultado es negativo).
15
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Divisin binaria
l
En el caso de nmeros con signo se utiliza la representacin en complemento a dos y las mismas reglas que para la multiplicacin en cuanto a signos.
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
16
Punto fijo:
La coma decimal se considera fija en un punto.
Ejemplo: Datos de 32 bits, utilizar 20 bits para la parte entera y 12 bits para los decimales
Fcil realizar las operaciones de sumas, restas, multiplicaciones y divisiones vistas hasta ahora Notacin: Qm,n
m: nmero de bits de la parte entera (opcional) n: nmero de bits para la parte decimal Se utiliza un bit adicional para el signo (en total hacen falta m+n+1 bits). Ejemplos: Q16,16, Q.32, etc.
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
17
Punto flotante:
La coma decimal es flotante Se descompone el nmero en dos partes: mantisa y exponente: N = M x bE Ejemplos:
2547,3510 = 2,54735 * 103 0,003510 = 3,5 * 10-3 111,01102 = 1,110112 * 22 0,0011012 = 1,1012 * 2-3
Se utiliza un nmero fijo de bits para la mantisa, otro para el exponente y otro adicional para el signo Normalizacin: Fija la posicin de la coma decimal en la descomposicin (para tener una representacin nica)
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
18
Se utiliza 1 bit para el signo Se utilizan 8 bits para el exponente (E) Se utilizan 23 bits para la mantisa (M) Nmeros normalizados: N= (-1)s * 2E-127 * 1.M
E puede tomar valores entre 1 y 254 (el exponente est desplazado por -127)
El cero se representa como todo ceros en los campos E y M (es una excepcin) Algunas otras excepciones: E = 255 denota infinito (utilizado en casos de overflow, por ejemplo) Tambin se pueden representar nmeros no normalizados (E=0). La descomposicin es diferente, la mantisa es 0.M Representacin similar 1 bit para signo, 11 bits para exponente, 52 bits para mantisa
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
19
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
20
Suma:
Modificar uno de los nmeros para que tengan el mismo exponente (denormalizarlo) Normalizar el resultado una vez realizada la operacin Anlogo a la suma. Aade complejidad de convertir a complemento a 2 Sumar exponentes Multiplicar mantisas Redondear y normalizar Anlogo a la multiplicacin
Resta: Multiplicacin:
Divisin:
Debido a la complejidad de las operaciones en coma flotante, muchos circuitos electrnicos digitales (microprocesadores por ejemplo) tienen mdulos dedicados a realizar estas operaciones
21
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
Referencias
l
Digital Systems Fundamentals. Thomas L. Floyd. Pearson Prentice Hall Introduction to Digital Logic Design. John P. Hayes. Addison-Wesley Digital Systems. Principles and Applications. Ronald J. Tocci. Pearson Prentice Hall.
Luis Entrena, Celia Lpez, Mario Garca, Enrique San Milln. Universidad Carlos III de Madrid, 2008
22