E.1 Introduction
This paper outlines the implementation of floating point in the C language on
the IRIS Workstation. Floating point formats, precision conventions, exception
handling,
non-standard,
enhancements are discussed.
E.2 Floating Point Formats
The IRIS Workstation uses the IEEE floating point format. The IRIS
implementation offers single- and double-precision floating point in the basic
format as outlined in the draft standard.
The IEEE standard is considerably more complex and more precise than most
other floating point standards because of the way the standard deals with
boundary conditions:
• In most floating point formats, when the exponent of the number
decreases to zero, the number itself becomes zero or a trap
specifying underflow is signaled. In the IEEE format, the number
remains valid and is termed denormalized. Denormalized number
arithmetic proceeds by expanding the exponent and normalizing the
number. Underflow is signaled only when the result of the
operation cannot be represented even by denormalizing.
• In most floating point formats, when the exponent of the number
increases past its maximum, a fairly simple trap occurs. In the IEEE
standard, however. a number with its exponent equal to the maximum
may either be (signed) infinity (if the mantissa is zero) or a special
encoding called not-a-number (NaN). The standard provides for several
user-selectable modes of operation to deal with these numbers.
1. "A Proposed Standard for Binary Floating Point Arithmetic", Computer, March. 1981.
Version 1.0
Appendix E: IRIS Floating Point
language
semantics,
and
1
internal
compiler
Need help?
Do you have a question about the IRIS Workstation and is the answer not in the manual?
Questions and answers