Computer Arithmetic

What is the role of IEEE 754 subnormal numbers?

  1. ARepresenting values above the largest normal number to prevent overflow
  2. BDetecting calculation errors and replacing the results with NaN
  3. CFilling the gap between normal numbers and zero for gradual underflow
Show answer and explanation

Answer: C. Filling the gap between normal numbers and zero for gradual underflow

With only normal numbers, there would be a large gap between the smallest normal number (about 1.18 × 10⁻³⁸ in single precision) and zero, and anything smaller would jump straight to 0. Subnormals, with an all-zero exponent and no implied leading 1, fill this gap with evenly spaced tiny values (gradual underflow), preserving the property that x − y = 0 implies x = y. Large values are represented by infinity, not subnormals, and error detection is unrelated.

  • A. Values too large are represented by infinity.
  • B. It has nothing to do with error detection.
  • C. Correct. It fills the gap near zero, making underflow gradual.
Practice this topic Back to topic

More Computer Arithmetic questions

  1. On some processors, computations involving many subnormal numbers can slow down dramatically. Which setting is used when performance takes priority?
  2. Under IEEE 754, what result does the standard specify for dividing a positive number by zero?
  3. When x is NaN, what does evaluating x == x give in most programming languages?
  4. In IEEE 754 single precision, what do bit patterns with an all-ones exponent field (255) represent?
  5. Which correctly describes +0 and −0 in IEEE 754 floating point?