ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Ensayo de Numeros de punto flotante


Enviado por   •  25 de Octubre de 2015  •  Resúmenes  •  3.653 Palabras (15 Páginas)  •  95 Visitas

Página 1 de 15
  1. Representación computacional de los números de punto flotante

Virtualmente todas las computadoras modernas siguen el estándar IEEE de punto flotante, en esta representación de punto flotante. En el lenguaje de programación JAVA los tipos float y double usan el formato IEEE simple y el formato IEEE doble respectivamente.

  1. representación de punto flotante

La representación de punto flotante está basada en la notación exponencial (o científica). En la notación exponencial, un números real distinto de cero x es expresado en decimal como

x = +- S x 10E, Donde 1 < S < 10, y E es un entero.

Los números S y E se llaman significante y exponente respectivamente. Por ejemplo, la representación exponencial de 0.00036525 es 3.6525 x 10-4. De esta forma se satisface el requerimiento de  1 < S < 10, como S se obtiene de x multiplicando o dividiendo repetidamente por 10, incrementando o decrementando el exponente E en concordancia.

Podemos imaginar que el punto decimal flota a la posición inmediatamente después del primer dígito diferente de cero en la expansión decimal del números: de ahí el nombre punto flotante, Para la representación en la computadora, se prefiere la base 2 a la base 10, entonces escribimos un números x diferente de cero en la forma

x = +- S x 2E, Donde 1 < S < 2,

Consecuentemente, la expansión binaria del significante es:

S = (b0 .b 1.b 2...)2  con b0 = 1

Por ejemplo, el números 11 / 2 es expresado como:

11/2 = (1.011)2  x  22

Ahora es el punto binario  el que flota a la posición después del primer dígito diferente de cero en la expansión binaria de x, cambiando en concordancia el exponente E.

Por supuesto esto no es posible si el número x es cero, por eso solo consideramos el caso distinto de cero. Donde b0 es, podemos escribir

S =  (1 .b 1.b 2.b 3...)2

Los bits que siguen del punto binario son llamados la parte fraccional del significante.

Un ejemplo más complicado es el números 1 / 10, el cual tiene una expansión binaria interminable.

1 / 10 = (0.00011001100011...)2 = 1/16 + 1/32 + 0/64 + 0/128 + 1/256 + 1/512 + 0/1024 +...

Podemos escribir esto como

1/10 = (1.1001100011...)2  x 2-4

Otra vez el punto binario flota a la posición después del primer números diferente de cero, ajustando consecuentemente el exponente. Un número binario que tiene este punto binario en la posición después del primer número diferente de cero se le llama normalizado.

La representación de puto flotante actualmente trabaja dividiendo una palabra computacional en tres campos, para representar el signo, el exponente y el significante (actualmente, la parte fraccionaria del significante) por separado.

  1. El formato simple

Formato IEEE simple de números flotantes usa una palabra de 32 bits, en esa representación el primer bit de la palabra es el bit del signo, los siguientes 8 bits son el campo del exponente, y los últimos 23 bits son la parte fraccionaria (la parte fraccionaria del significante).

Describiendo la tabla 1 detalladamente. El símbolo ± se refiere al signo del número, un cero representa el signo positivo. La primer línea que la representación de cero requiere de una especial cadena de ceros para el campo del exponente así como una cadena de ceros para el campo fraccional

±

00000000

00000000000000000000000

Ninguna otra línea en la tabla puede ser utilizada para representar el números cero, para todas las  líneas excepto la primera y la última representan números normalizados, con un bit inicial igual a 1, esta parte se dice que es oculta puesto que no se almacena explícitamente. En el caso de la primer línea de la tabla, el bit oculto es cero, no uno. El 2-126 en la primer línea es confundido a primer vista, pero ignore por un momento (0.000...0)2 x 2-126 ciertamente es una forma de escribir el números cero. En este caso cuando el campo del exponente es cero pero el campo fraccionario es diferente de cero, se dice que el número representado es subnormal. Seguiremos nuestra discusión acerca de la tabla y después continuaremos con la discusión de los números subnormales.

Todas las líneas del atabla 1 excepto la primera y la última se refieren a números normalizados, todos los números de punto flotante que no son especiales de alguna forma. Note especialmente la relación entre la cadena de bits del exponente a1a2a3...a8 y el exponente actual E.

±

a1a2a3...a8

b 1.b 2.b 3...b 23

Si la cadena de bits del exponente a1...a8 es

El números representado es

(00000000)2 = (0)10

±(0.b 1.b 2.b 3...b 23)2 x 2-126

(00000001)2 = (1)10

±(1.b 1.b 2.b 3...b 23)2 x 2-126

(00000010)2 = (2)10

±(1.b 1.b 2.b 3...b 23)2 x 2-125

(00000011)2 = (3)10

±(1.b 1.b 2.b 3...b 23)2 x 2-124

(01111111)2 = (127)10

±(1.b 1.b 2.b 3...b 23)2 x 20

(10000000)2 = (128)10

±(1.b 1.b 2.b 3...b 23)2 x 21

(11111100)2 = (252)10

±(1.b 1.b 2.b 3...b 23)2 x 2125

(11111101)2 = (253)10

±(1.b 1.b 2.b 3...b 23)2 x 2126

(11111110)2 = (254)10

±(1.b 1.b 2.b 3...b 23)2 x 2127

(11111111)2 = (255)10

±∞ si  b 1 = ... = b 23 = 0, NaN de lo contrario

...

Descargar como (para miembros actualizados)  txt (21.7 Kb)   pdf (196.6 Kb)   docx (37.1 Kb)  
Leer 14 páginas más »
Disponible sólo en Clubensayos.com