# IEEE_ARITHMETIC Intrinsic Module

The IEEE_ARITHMETIC module contains derived data types that include named constants for controlling the level of support, and intrinsic module procedures.

The derived types in the intrinsic modules have components that are private. The IEEE_ARITHMETIC intrinsic module supports IEEE arithmetic and features. It defines the following derived types:

- IEEE_CLASS_TYPE: Identifies a class of floating-point values. Its values are the following named constants:

  IEEE_SIGNALING_NAN | IEEE_NEGATIVE_NORMAL
  IEEE_QUIET_NAN | IEEE_POSITIVE_DENORMAL
  IEEE_POSITIVE_INF | IEEE_NEGATIVE_DENORMAL
  IEEE_NEGATIVE_INF | IEEE_POSITIVE_ZERO
  IEEE_POSITIVE_NORMAL | IEEE_NEGATIVE_ZERO
  IEEE_OTHER_VALUE |

- IEEE_ROUND_TYPE: Identifies a rounding mode. Its values are the following named constants:

  IEEE_AWAY 1 | IEEE_OTHER 4
  IEEE_DOWN 2 | IEEE_TO_ZERO 5
  IEEE_NEAREST 3 | IEEE_UP 6
  1 Corresponds to ISO/IEC/IEEE 60559:2011 rounding attribute roundTiesToAway. Intel hardware does not support this mode. 2 Corresponds to ISO/IEC/IEEE 60559:2011 rounding attribute roundTowardNegative. 3 Corresponds to ISO/IEC/IEEE 60559:2011 rounding attribute roundTiesToEven. 4 Specifies the rounding mode does not conform to the IEEE standard. 5 Corresponds to ISO/IEC/IEEE 60559:2011 rounding attribute roundTowardZero. 6 Corresponds to ISO/IEC/IEEE 60559:2011 rounding attribute roundTowardPositive.

The IEEE_ARITHMETIC intrinsic module also defines the following operators:

- Elemental operator = = for two values of one of the above types to return true if the values are the same; otherwise, false.

- Elemental operator /= for two values of one of the above types to return true if the values differ; otherwise, false.

The IEEE_ARITHMETIC module includes support for IEEE_EXCEPTIONS module, and public entities in IEEE_EXCEPTIONS module are also public in the IEEE_ARITHMETIC module.

To see a summary of all the IEEE_ARITHMETIC intrinsic procedures, see IEEE Intrinsic Modules Quick Reference Tables

Parent topic: IEEE Intrinsic Modules and Procedures