No siempre resulta conveniente restringir los
números representables a punto fijo. En
muchos problemas deben utilizarse números cuyo tamaño varía de 10-50 a
250. Por esta razón, la
mayor parte de las computadoras científicas incluyen aritmética de punto
flotante. Con frecuencia se
utiliza punto decimal flotante para
escribir en “Notación Científica”. Por
ejemplo,
1.05203
x 10 16 = 10 520 300 000
000 000
5.32635
x 10 -14 = 0.000 000 000 000
053 263 5
La primera parte de la representación
científica se denomina mantisa,
mientras que la segunda es el exponente, en este caso un exponente decimal. En el primer ejemplo anterior la mantisa es
1.05203 y el exponente 16.
El formato para un número real de punto
flotante en una computadora define según el diseño de hardware y software.
Los números de punto flotante se almacenan en
el formato de punto flotante normalizado en binario. En precisión simple se usan 4 bytes, o 32
bits para almacenar un número de punto flotante.
Si se introduce como dato un número decimal,
primero se convierte al binario más cercano
en el formato normalizado.
± 0.abbbbbb ... bbbb)2
x 2z
Donde:
a siempre es 1
b cada b es un dígito 0 ó1
z es un exponente que se expresa en binario
Para la representación de un número en punto
flotante los 32 bits se distribuyen de la siguiente manera:
·
El primer dígito se usa para representar el signo de
la mantisa
·
Los siguientes 7 bits para el exponente z
·
Los últimos 24 bits para la mantisa
0
|
30
|
31
|
|||
1
|
7
|
24
|
|||
0
|
31
|
|||
1
|
111 1111
|
11111111 11111111 11111111 11111111
|
||
Sistema Decimal
|
Mantisa
Normalizada
|
12534.33
|
0.1253433 x105
|
14332607951032.20
|
0.1433260795103220 x1013
|
0.00000325
|
0.325 x10-5
|
475.22
|
0.47522 x103
|
0.00000000145128
|
0.145128 x10-8
|
Los errores asociados con los cálculos y medidas se pueden caracterizar observando su precisión y exactitud.
En el formato normalizado de punto flotante,
el primer dígito de la matiza siempre es 1, por lo que no se almacena
físicamente. Esto explica por qué una
mantisa de 24 bits se almacena en 23.
Si los
8 bits asignados al exponente se usan para enteros positivos, el exponente
puede representar desde o hasta 28 - 1 = 255, aunque puede incluir
números negativos. Para registrar
exponentes positivos y negativos, el exponente en decimal es sesgado (o sumado)
con 128 y después convertido a binario (complemento a 2’s). Por ejemplo, si el exponente es -3, entonces
-3 +128 = 125. Se convierte a binario y
se almacena en los 8 bits. Por lo
tanto, los exponentes que se pueden almacenar en 8 bits van de 0 - 128 = -128 hasta 225 - 128 = 127
En la computadora, la representación consiste
de una mantisa normalizada, seguida de un exponente, esto es, entre la primera
cifra significativa y el punto decimal no existen ceros.
Los siguientes ejemplo ilustran la
representación de los números con punto flotante normalizado: