Beruflich Dokumente
Kultur Dokumente
se
escribe
un
nmero
en
el
Estndar
IEEE
754?
El estndar IEEE 754 ha sido definido por el Instituto de Ingenieros Elctricos y Electrnicos
(Institute of Electrical and Electronics Engineers, IEEE) y establece dos formatos bsicos para
representar a los nmeros reales en la computadora digital: precisin simple y precisin doble.
Figura - Representacin de un nmero real con precisin simple en el estndar IEEE 754.
n-1
El exponente se suele representar en Exceso a 2 -1, mientras que, para la mantisa, normalmente
se utiliza Signo Magnitud. Adems, la mantisa se suele normalizar colocando la coma decimal a la
derecha del bit ms significativo.
Ejemplo 1: Para escribir el nmero 101110,0101011101000011111000011111000100112 en el
n-1
estndar IEEE 754 con precisin simple, exponente en Exceso a 2 -1 y mantisa en Signo
Magnitud, primero hay que normalizarlo:
1,011100101011101000011111000011111000100112 x 2
n-1
8-1
- 1)10 = 510 + (27 - 1)10 = 510 + (128 - 1)10 = 13210 = 10000100EX. a 127
Los programadores, para representar a los nmeros reales en este formato, suelen utilizar el
Sistema Hexadecimal.
As pues,
En este caso, los nmeros no son exactamente iguales, ya que, con precisin simple no se han
podido representar todos los bits de la mantisa.
Ejemplo 2: Dado el nmero 3E400000CFL del estndar IEEE 754 con precisin simple, exponente
n-1
en Exceso a 2 -1 y mantisa en Signo Magnitud con bit implcito, para averiguar a qu nmero
representa en base 10, se pueden realizar los siguientes pasos:
1) Convertir 3E40000016 a base 2:
8-1
4) Escribir el nmero en notacin cientfica. Para ello, la mantisa se debe escribir con el bit implcito
(1), seguido de la coma decimal (,) y de los bits de la mantisa (10000000000000000000000),
teniendo en cuenta que los ceros por la derecha se pueden despreciar. Por otra parte, el nmero es
positivo, ya que, el bit de signo es 0. Por tanto, el nmero es:
1,1 x 2
-3
5) Expresar el nmero en base 10. Para ello, hay dos formas de hacerlo, la primera es:
-3
-3
-4
-1
-3
Por otro lado, en precisin doble, para escribir un nmero real se emplean 64 bits (8 bytes): 1 bit
para el signo (s) del nmero, 52 bits para la mantisa (m) y 11 bits para el exponente (exp).
Figura - Representacin de un nmero real con precisin doble en el estndar IEEE 754.
Ejemplo 3: Si se quiere escribir el nmero 19,562510 en el estndar IEEE 754 con precisin
n-1
doble, exponente en Exceso a 2 -1 y mantisa en Signo Magnitud con bit implcito, los pasos a
seguir son:
1) Cambiar 19,562510 a base 2. Primero la parte entera:
De modo que,
19,562510 = 10011,10012
2) Normalizar el nmero binario obtenido, colocando la coma decimal a la derecha del bit ms
significativo:
10011,10012 = 1,00111001 x 2
n-1
11-1
- 1)10 = 410 + (2
10
4) Establecer la mantisa utilizando bit implcito. Para ello, se cogen los ocho bits que estn a la
derecha de la coma (00111001) y el resto de la mantisa se rellena con ceros:
0011100100000000000000000000000000000000000000000000
5) Expresar el nmero en el estndar IEEE 754 con precisin doble. En este caso, hay que tener
en cuenta que el bit de signo vale 0, ya que, el nmero es positivo:
Figura - Casos especiales en el estndar IEEE 754 con precisin simple o doble.
Los dos ltimos casos merecen especial atencin, ya que, cuando todos los bits del exponente son
ceros (00...0), esto quiere decir que no se est utilizando bit implcito. Si, adems, la mantisa es
todo ceros (00...0), el nmero representado es el cero (0), pero si la mantisa es distinta de todo
ceros, el nmero que se est representando es muy pequeo, de forma que, el exponente valdr 126 -1022, dependiendo de si el nmero est escrito en precisin simple o doble,
respectivamente.
Ejemplo 4: Dado el nmero 805C0000CFL del estndar IEEE 754 con precisin simple, exponente
n-1
en Exceso a 2 -1 y mantisa en Signo Magnitud con bit implcito, para averiguar a qu nmero
representa en base 10, se pueden realizar los siguientes pasos:
1) Convertir 805C000016 a base 2:
3) Al observar que todos los bits del exponente son ceros (00000000) y la mantisa es distinta de
todo ceros, se deduce que es un caso especial. Se est representado a un nmero muy pequeo
sin bit implcito y, por tanto, el exponente es -126.
4) En notacin exponencial, puesto que en este caso no se utiliza bit implcito, la mantisa se
escribe con un cero (0), seguido de la coma decimal (,) y de los bits de la mantisa
-126
Figura - Clculo del valor en base 10 de un nmero escrito en IEEE 754 con precisin simple.
Figura - Clculo del valor en base 10 de un nmero escrito en IEEE 754 con precisin doble.