eXTReMe Tracker

Marzo 24, 2004

Representación interna de Números reales en el ordenador. IEEE 754

Escrito el Marzo 24, 2004 02:17 PM en Apuntes .

Como veíamos el otro día, hay que establecer una correspondencia entre el conjunto los datos a representar y el binario limitado a los n bits que constiyan el ancho de palabra en el procesador. La codificación depende del tipo de dato a representar y en el caso de los reales tenemos un problema y dos soluciones.

El problema para la representación interna de números reales en el ordenador digital estriba en el punto decimal que separa la parte entera y la parte fraccionaria, además del problema compartido con los números enteros del signo.

Las dos estrategias que hay para solucionarlas son la representación en punto fijo y la más habitual, ya en casi todos los ordenadores modernos, representación en coma flotante.

En la representación en punto fijo cada número se representa por n bits para la parte entera y m bits para la parte fraccionaria. De esta forma nos ahorramos el punto puesto que siempre estará colocado en la misma posición (fijo). Su principal hándicap radica en que no todos los números reales pueden representarse con este formato (dependerá de n y de m) y un mismo número en punto fijo puede representar a muchos números reales. Se denomina rango de una representación en punto fijo al subconjunto de los números reales que se puede representar. Se denomina resolución a la distancia mínima entre dos números consecutivos en punto fijo. La resolución está relacionada con el valor m de la representación.

La representación en punto flotante consta de los campos: signo (un bit), mantisa y exponente. La mantisa es un número comprendido entre 0.5 y 1 y el exponente indica la potencia a la que hay que elevar la base (binaria) para que multiplicada por la mantisa nos reconstruya el número. Además de eliminar el punto decimal, esta representación aumenta el rango de representación.

Existen muchos formatos de representación en punto flotante. El más usado es el estándar IEEE 754, del que hay tipos: formato IEEE 754 simple precisión, en el que la palabra es de 32 bits y formato IEEE 754 doble precisión en el que la palabra es de 64 bits. Difieren además de en el tamaño de la palabra en que se basan, en el número de bits que asignan a cada campo.

Formato IEEE 754 simple precisión. La palabra de 32 bits se organiza en los siguientes campos:
1 bit para el signo
8 bits para exponente
23 bits para la mantisa


Formato IEEE 754 doble precisión. La palabra de 64 bits se organiza en los siguientes campos:
1 bit para el signo
11 bits para la exponente
52 bits para la mantisa


Por último, el enlace a la página del padre del IEEE 754: William Kahan

Trackback

Puedes hacen ping a esta entrada con la dirección http://www.error500.net/cgi-bin/mt-tb.cgi/19 .

Comentarios

Necesito mas informacion y ejemplos de la representacion de numeros reales se lo agradeceria mucho..
gracias

Escrito por Aldo Higuera el Abril 19, 2004 08:13 PM

quisiera saber cuales son los numeros reales, naturales, enteros, racionales.

Escrito por maria fernanda el Abril 20, 2004 01:51 AM

quisiera saber cuales son los numeros reales, naturales, enteros, racionales.

Escrito por maria fernanda el Abril 20, 2004 02:02 AM

pues mmiren necesitamos mas informacion especifika de los numeros reales y kuales son sus operaciones....por faovr ponganlas,...... gracias

Escrito por brenda el Agosto 18, 2004 06:37 PM

necesito informacion sobre las notaciones segun la IEEE para 16 , 34 y 64 bits.

gracias

Escrito por PAOLA DIAZ el Septiembre 1, 2004 01:18 AM

necesito informacion sobre las notaciones segun la IEEE para 16 , 34 y 64 bits.

gracias

Escrito por PAOLA DIAZ el Septiembre 1, 2004 01:18 AM

k

jkj


jiiiiijhkhkihikhnkjnikklj


o


p


p


p


p


p


p


p

´

p

Escrito por el Noviembre 25, 2004 06:26 PM

Cómo es el procedimiento para convertir un decimal grande, por ejemplo 10^15, al formato IEEE64. Gracias.

Escrito por Juan Manuel Fernandez el Febrero 16, 2005 11:26 PM

necesito saber el concepto de mantisa y exponente.

Escrito por cridtian el Marzo 10, 2005 10:22 PM

para poder trabajar con numeros grandes ej 10**1500 debes bajar el exponente con un logaritmo, Si lo vas a pasar a base binaria te conviene un logaritmo en base dos porke necestitas ke kede del tipo 2**algo 10b**algo.

entonces tenes :
10**1500 igual 2**x
1500 logbase2 10 igual x /// bajas el exponente
xxxx.xxxx igual x

entonces ahi tenes tu exponente en base 2 del numero, la parte entera esta perfecta y sera tu exponente, pero la parte fraccionara la vas a tener ke multiplicar por tu numero original para no perder precision, esto es 2**0.xxxxx * num
y ahi tenes convertido tu numero.
Es medio dificil de explicar por inet pero si tenes conocimientos de matematica no se te tiene ke complicar mucho. saludos n0p.

Escrito por n0p el Abril 6, 2005 12:40 PM

quisiera saber mas sobre las codificaciones de los puntos flotantes, me interesaria que me contestara lo mas pronto posible

Escrito por Emilio Corea el Abril 8, 2005 08:55 PM

necesito ejemplos sobre estas representacion, se los agradeceria mucho

Escrito por mauri el Mayo 2, 2005 02:25 AM

tengo una duda y quiero que me la solucionen. es como en representacion en simple precision tengo que asignar la cantidad de bit, por ejemplo para pasar el numero -2,73 , cuantos bit asigno para la parte decimal?

Escrito por diego cambruzzi el Mayo 13, 2005 10:36 PM

como se representa los numeros en punto flotante en formato de 32 bits

Escrito por jesus carranza el Agosto 30, 2005 05:25 PM

necesito informacion sobre operaciones en base2, cambios de una base a otra, codigos de representacion ASCII, EBCDIC, UNICODE. SE LO AGRADEZCO.

Escrito por Cesar Barajas el Agosto 31, 2005 04:40 PM

Quisiera saber la representacion de los numeros reales en los diferentes sistemas numericos

Escrito por jose ignacio el Septiembre 6, 2005 03:53 PM

¿Que es la mantisa??????

Escrito por Israel Rodríguez el Septiembre 8, 2005 01:58 AM

Escribe un comentario










¿Recordar información personal?