Floating-point data types

The floating-point data types are approximate data types. The system rounds the significand if more precision is present than it can represent.

Syntax
[ '+' | '-' ] <digit>… [ '.' [ <digit>… ] ] [( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
[ '+' | '-' ] '.' <digit>… [ ( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
[ '+' | '-' ] <digit>… [ ',' [ <digit>… ] ] [( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
[ '+' | '-' ] ',' <digit>… [ ( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
Description
  • Optional leading sign
  • Unlimited leading zeros
  • At least one decimal digit
  • Decimal point or comma, if needed
  • Optional e or E introducing an exponent that is followed by an optional sign and one or more digits
Limitations
  • No thousands-separator commas
  • No support for loading exceptional values, meaning Not a Number (NaN) values and infinities

The syntax of floating-point values is the same as the syntax of fixed-point values augmented by an optional trailing exponent specification.

The optional decimal point can be followed by zero or more decimal digits if there is at least one decimal digit before the decimal point. The the optional decimal point can be followed by one or more decimal digits if there are no decimal digits before the decimal point.

If there is no explicit decimal point, the system assumes a decimal point immediately following the last decimal digit.

You can specify a comma as a separator by using it like the decimal point.

The optional power of 10 exponent is e (lowercase or uppercase), with an optional sign and a mandatory sequence of decimal digits.

The following table describes the floating-point precision and representation:
Table 1. Floating-point precision and representation
Type Real Double
Representation 4-byte IEEE floating point 8-byte IEEE floating point
Approx. largest normalized value ±3.40e+38 ±1.79e+308
Approx. smallest normalized value ±1.18e-38 ±3.40e-308
Approx. smallest denormalized value ±7.01e-46 ±2.50e-324
The following conditions result in system errors:
Overflow
The field exceeds the largest representable value (maximum exponent and maximum significand).
Underflow
The number is too small to approximate in the denormalized range.