Previous: Bignums, Up: Numbers

##### 3.6.2.3 Flonums

A flonum represents a floating point number. The translation is indirect: a decimal floating point number from the text is converted by as to a generic binary floating point number of more than sufficient precision. This generic floating point number is converted to a particular computer's floating point format (or formats) by a portion of as specialized to that computer.

A flonum is written by writing (in order)

- The digit 0. (0 is optional on the HPPA.)
- A letter, to tell as the rest of the number is a flonum. `e` is recommended. Case is not important.

  On the H8/300, Renesas / SuperH SH, and AMD 29K architectures, the letter must be one of the letters DFPRSX (in upper or lower case).

  On the ARC, the letter must be one of the letters DFRS (in upper or lower case).

  On the Intel 960 architecture, the letter must be one of the letters DFT (in upper or lower case).

  On the HPPA architecture, the letter must be E (upper case only).

- An optional sign: either + or -.
- An optional integer part: zero or more decimal digits.
- An optional fractional part: . followed by zero or more decimal digits.
- An optional exponent, consisting of:
  - An E or e.
  - Optional sign: either + or -.
  - One or more decimal digits.

At least one of the integer part or the fractional part must be present. The floating point number has the usual base-10 value.

as does all processing using integers. Flonums are computed independently of any floating point hardware in the computer running as.