Ver Mensaje Individual
  #19  
Antiguo 25-01-2011
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 27
Delphius Va camino a la fama
Cita:
Empezado por ecfisa Ver Mensaje
Para las aplicaciones normales el tipo Double es suficiente, el Extended es más usado para cálculos científicos.
Pues si, el Double es más que suficiente para los simples mortales, y hasta diría que algunos cálculos científicos.

Lo que sería bueno mencionar es que en lo posible hay que evitar el tipo Extended. No está del todo "soportado", es menos portable y requiere de más tiempo para leer y escribir en estos tipos.
El mayor peligro del tipo Extended es que es un tipo con rango abierto. El estándar IEEE si bien indica los valores límites. Cada plataforma (si es que lo soporta) es libre de tomar el rango dentro de los límites establecidos que desee y lo mismo puede, y sucede, en algunos compiladores.

Lo más raro del asunto es que internamente, las máquinas que usamos hoy en día tienen una arquitectura basada en extended (lo podemos comprobar incluso con Delphi y revisar las funciones matemáticas más basicas... reciben como parámetro o regresan un valor de tipo extended).
De este modo, aún utilizando el tipo Double o Single, la FPU utiliza registros extended para hacer los cálculos. Esto supuestamente garantiza que los cálculos internamente se hagan con la mejor precisión posible y aceptan cierto márgen de error al devolver el dato al tipo con el que estamos trabajando (es decir, si trabajamos con Double se consigue esto: Double -> Extended -> Double). Como es de esperar, existe un mayor discrepancia en el tipo Single.

Al menos eso es lo que tengo entendido. Se puede forzar a la FPU trabajar con la precisión que queramos en las operaciones intermedias... se que había una palabra de control para eso pero no la recuerdo ahorita

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita