32-bit floating point

From NDWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Norsk Data 32-bit single precision floating point format:

The NORD-10 and the ND-100 could be ordered with either of two different hardware floating point formats, the 32-bit format described on this page, or alternatively with 48-bit floating point hardware.

The ND-500 and ND-5000 used the 32-bit floating point format for single precision. The ND-100 (or -110, -120) front ends in those systems would normally have come with the 32-bit hardware option in order to be compatible with their 500(0) companion.

Field #Bits Purpose
bit 31 1 Sign bit
bit 30-22 9 Exponent
bit 21-0 22 Mantissa
  • The mantissa is normalized: 0.5 ≤ mantissa ≤ 1
  • The mantissa always has an implicit 23th bit of 1, unless the exponent is zero (see below)
  • The decimal point is thus to the left of the implicit 23th bit (before exponent is applied)
  • The exponent has a bias of +256 (subtract 256 to get true exponent)

Special values

  • All bits zero except sign bit: Floating underflow
  • All bits of exponent zero: Zero (sign bit or mantissa values are ignored)

(Strictly speaking the 'exponent zero = zero' is ND-500 only, the ND-100 spec document says floating zero: All 32 bits zero. But any ND-100 introduced after the ND-500 would presumably be compatible, if not before.)

Precision

  • 23 bits or approximately 7 decimal digits

Range

  • (2-256 - 0.5) ≤ X < (2255 - 1) or X = 0

or approximately

  • +/- 8.6*10-78 < X < +/- 5.8*1076

Sources