Tipos de datos de coma flotante

Los tipos de datos de coma flotante son tipos de datos aproximados. El sistema redondea la cifra menos significativa, si existe más precisión de la que puede representar.

Sintaxis
[ '+' | '-' ] <digit>… [ '.' [ <digit>… ] ] [( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
[ '+' | '-' ] '.' <digit>… [ ( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
[ '+' | '-' ] <digit>… [ ',' [ <digit>… ] ] [( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
[ '+' | '-' ] ',' <digit>… [ ( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
Descripción
  • Signo inicial opcional
  • Ceros iniciales ilimitados
  • Al menos un dígito decimal
  • Coma o separador decimal, si es necesario
  • e o E opcionales que introducen un exponente seguido de un signo opcional, y uno o varios dígitos
Limitaciones
  • Sin puntos de separador de millares
  • No hay compatibilidad con la carga de valores excepcionales, es decir, valores «No es un número» (NaN) e «Infinito».

La sintaxis de valores de coma flotante es la misma que la sintaxis de valores de coma fija junto con una especificación opcional de exponente al final.

La coma decimal opcional puede ir seguida de un cero o de más dígitos decimales, si hay al menos un dígito decimal delante de la coma decimal. La coma decimal opcional puede ir seguida de uno o más dígitos decimales, si no hay dígitos decimales delante de la coma.

Si no hay separador decimal explícito, el sistema supone un separador decimal inmediatamente después del último dígito decimal.

Puede especificar una coma como separador, utilizándola como punto decimal.

La potencia opcional de exponente de 10 es e (en minúsculas o en mayúsculas), con un signo opcional y una secuencia obligatoria de dígitos decimales.

La tabla siguiente describe la representación y la precisión de coma flotante:
Tabla 1. Precisión y representación de coma flotante
Tipo Real Doble
Representación Coma flotante IEEE de 4 bytes Coma flotante IEEE de 8 bytes
Valor normalizado más grande (aprox.) ±3.40e+38 ±1.79e+308
Valor normalizado más pequeño (aprox.) ±1.18e-38 ±3.40e-308
Valor desnormalizado más pequeño (aprox.) ±7.01e-46 ±2.50e-324
Las siguientes condiciones dan errores del sistema:
Desbordamiento
El campo supera el valor más grande que se puede representar (exponente máximo y valor mayor para la cifra más significativa).
Subdesbordamiento
El número es demasiado pequeño para aproximarse en el rango no normalizado (desnormalizado).