Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Signo y Magnitud:
0 0 1 1 0 1 0 0
Bit de Signo Magnitud = 5210
Por lo tanto en un byte con solamente 7 bits (aparte del bit de signo) la magnitud puede
tomar valores desde 01111111(+127) a 0000000 (0), y de aqu a 11111111 (-127). As se
puede representar nmeros desde -12710 hasta +12710. Una consecuencia de esta
representacin es que hay dos maneras de representar 0, 00000000 (0) y 10000000 (-0). De
este modo -43 decimal codificado en un byte de ocho bits es 10101011.
Complemento a uno:
El rango para la representacin en complemento a uno con 8 bits es 127 a +127 (en
base 10). Para sumar dos nmeros representados en este sistema, uno hace una suma
binaria convencional, pero es necesario sumar el ltimo acarreo obtenido al resultado de la
suma. Para ver porqu esto es necesario, consideramos el caso de la suma de 1
(11111110) a +2 (00000010). La adicin binaria solamente da a 00000000, que no es la
respuesta correcta! Solamente cuando se suma el acarreo al resultado obtenemos el
resultado correcto (00000001).
Ejemplo:
Usando una palabra para representar el nmero 31:
0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
Para 31:
1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
Complemento a dos:
Los problemas de las mltiples Valores con Valor del Valor sin
representaciones del 0 y la necesidad del acarreo nmeros de complemento signo
de salida, se evitan con un sistema llamado 8 bits a dos
Complemento a dos. En el complemento a dos, 00000000 0 0
los nmeros negativos se representan mediante 00000001 1 1
el patrn de bits que es un bit mayor (sin signo) ... ... ...
que el complemento a uno del valor positivo. En 01111110 126 126
el complemento a dos, hay un solo cero 01111111 127 127
(00000000). Para negar un nmero (negativo o 10000000 128 128
positivo) invertimos todos los bits y aadimos un 1 10000001 127 129
al resultado. 10000010 126 130
... ... ...
La suma de un par de nmeros enteros en 11111110 2 254
complemento a dos es la misma que la suma de 11111111 1 255
un par de nmeros sin signo (excepto para la
2
deteccin de desbordamiento si se usa).
Por ejemplo, la suma en complemento a dos de 127 y 128 da el mismo patrn de bits
que la suma sin signo del 127 y 128, tal y como se puede ver en la tabla de abajo.
Ejemplo 1 Ejemplo 2
1. Empezando desde la derecha encontramos el primer '1' 0101001 0101100
2. Hacemos un NOT a todos los bits que quedan por la izquierda 1010111 1010100
Resumiendo:
Cuando se va a almacenar un nmero positivo, se almacena el 0 en la posicin que
corresponde al signo, se convierte el valor correspondiente a binario y se almacena en las
posiciones restantes. Justificando a la derecha en los casos necesarios.
Ejemplo:
Usando una palabra para representar el nmero 31:
0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
Para 31:
1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1
Intervalo de valores:
[-2N, 2N-1]
3
Para N = 3 [-8, 7] 16 diferentes nmeros.
Decimal Complemento
A2
-8 1000
-7 1001
.
.
.
6 0110
7 0111
Ejemplos:
1. Cul es el intervalo de valores en base 10 sin signo que se puede representar en 8 bits?
256 diferentes valores [0, 255].
Decimal Complemento
A2
0 00000000
1 00000001
.
.
.
255 11111111
3. Cul es el menor nmero negativo en base 10 que se puede representar con 16 bits?
4. Cuntos bits se requieren para representar los nmeros enteros decimales que se
encuentran entre -50 y 50 inclusive? Se requieren 7 bits.
Tabla de comparacin:
9 010012
+9 +010012
100102
5
Multiplicacin binaria en el Sistema Complemento a 2:
En las computadoras que emplean la representacin en complemento a 2, la
multiplicacin se efecta en la misma forma, siempre y cuando el multiplicando y el
multiplicador se conviertan en magnitudes positivas.
Caso 1: Si los dos nmeros que se van a multiplicar son positivos, se convierten a binario y
ya se encuentran en complemento a 2 con magnitudes positivas, por lo tanto basta
multiplicarlos. Sabemos que el producto es positivo y se le da un bit de signo 0 (cero).
Caso 2: Cuando los dos nmeros son negativos, se realiza la conversin a binario y se debe
complementar a 2 para convertirlos en magnitudes positivas y luego se realiza la respectiva
multiplicacin. El producto se mantiene positivo y se le asigna un bit de signo 0 (cero).
Caso 3: Cuando uno de los nmeros es positivo y el otro negativo, al negativo se le convierte
primero en una magnitud positiva, tomando su complemento a 2. El producto estar en forma
de magnitud positiva, sin embargo, el producto tiene que ser negativo, por lo cual se debe
calcular el complemento a 2 de este resultado y se le debe asignar un bit de signo 1 (uno).
Caso 2: Si el dividendo y el divisor tienen el mismo signo, el cociente se deja como una
magnitud positiva y se le asigna un signo 0 (cero).
Punto Flotante
Muchas aplicaciones requieren trabajar con nmeros que no son enteros. Existen
varias formas de representar nmeros no enteros. Una de ellas es usando un punto o coma
fijo. Este tipo de representacin ubica siempre el punto o coma en alguna posicin distinta
de la derecha del dgito menos significativo.
10.75 x 10 0
1.075 x 10 1
mantisa exponente
6
En general, un nmero en punto flotante puede ser representado como d0.d1d2d3...dk x
e
b donde d0.d1d2d3...dk se conoce como la mantisa, b es la base y e el exponente
Dado que un nmero en punto flotante puede expresarse de distintas formas que son
equivalentes, es necesario establecer una nica representacin. Es por ello que se trabaja
con nmeros normalizados. Decimos que un nmero est normalizado si el dgito a la
izquierda del punto o coma est entre 0 y la base (0< dgito a la izquierda del punto < b). En
particular, decimos que un nmero binario est normalizado si el dgito a la izquierda del
punto es igual a 1.
1.00 x 10 -1 normalizado
0.01 x 10 2 no normalizado
Precisin Simple
S Exponente Mantisa
31 22 0
signo exponente con signo Mantisa
1 8 23
7
La representacin de un nmero en precisin simple en el formato IEEE-754 consta de
las siguientes partes:
Mantisa. Est formada por el resto de los bits en la palabra (23). Como los
nmeros se representan de manera normalizada entonces siempre tendremos un 1
a la izquierda del punto. Por lo tanto este dgito no es necesario almacenarlo en la
palabra y se tiene de manera implcita. La mantisa consiste en 24 bits de precisin,
los 23 que se almacenan ms el 1 que no se almacena.
Ejercicio
21
2110 = 101012 = 1.01012 x 1024
Exponente 4 + 127 = 13110 = 1000 00112
0 10000011 01010000000000000000000
Precisin Doble
Casos Especiales
Para valores de exponente desde 1 hasta 254 en el formato simple y desde 1 a hasta
2046 en el formato doble, se representan nmeros en punto fijo normalizados. El exponente
est en exceso, siendo el rango del exponente de 126 +127 en el formato simple y de
1022 a +1023 en el doble.
Un nmero normalizado debe contener un bit 1 a la izquierda del punto binario; este bit
est implcito, dando una mantisa efectiva de 24 bits para precisin simple o 53 bits para
precisin doble (denominada parte fraccionaria en el estndar).
Un exponente cero junto con una parte fraccionaria cero representa el cero positivo o
negativo, dependiendo del bit de signo. Es til tener una representacin del valor 0 exacto.
9
Precisin Simple
Precisin Doble
Num10 = d0.d1d2d3d4...dN b
Ejemplos
0.50
(0.50-0) * 2 = 1 d0=0
(1.00-1) * 2 = 0 d1=1
10
0.5010 = 0.12 = 1.0 x 2-1
0 01111110 00000000000000000000000
0 01111110 00000000000000000000000
exponente en
Signo mantisa
exceso
Esta representacin es una aproximacin. No puede ser escrito en forma precisa. Los
nmeros punto flotante son normalmente aproximaciones. La razn de esto es que existe un
nmero infinito de nmeros reales entre dos nmeros dados.
d.) Qu nmero decimal representa el siguiente patrn de bits en IEEE precisin simple?
0 00001100 01000000000000000000000
11
- Calculamos el exponente que va a formar parte del nmero decimal, restando el valor del
exponente menos el exceso de 127.
- Los dgitos que estn en la mantisa van a formar parte de el nmero decimal, y por tanto el
nmero representado es
e.) Qu nmero decimal representa el siguiente patrn de bits en IEEE precisin simple?
0 10000011 10100000000000000000000
Exponente en exceso = 131
Exponente = 131 - 127 = 4
1.101 x 24 = 11010 = 2610
Ejercicios Propuestos
a. 2213 ?5
510 = 123
2213 123
12 123 123
101 12 1
101 0
0
2213 = 1005
Ejercicios:
b. 10223 ?2 Respuesta: 10223 = 1000112
c. 102123 ?8 Respuesta: 102123 = 1508
d. 1002123 ?8 Respuesta: 1002123 = 4128
e. 418 ?3 Respuesta: 418 = 10203
f. 3024 ?8 Respuesta: 3024 = 628
12