next up previous
Next: About this document ... Up: nasty-nums Previous: Floating Point Problems

Extreme Issues

As mentioned previously, and repeated for your convenience, an IEEE single precision floating point number, z, is stored in 32 bits, with parts s, the sign bit; e, the 8-bit excess-127 exponent; and, f, the 23 bit fractional part as shown below.


\begin{displaymath}z = (-1)^s \;\;\; 1.f\;\;\; \times 2^{e-127}\end{displaymath}

Since all of the $2^{32}$ bit patterns are accounted for above, we must set aside several exceptional or signal values which are interpreted by the rules below, instead of the simple-minded formula above.




s e f Meaning
0/1 $00_H$ $00_H$ Zero
0/1 $00_H$ non-zero DeNormalized
0 $FF_H$ $00_H$ $+\infty$
1 $FF_H$ $00_H$ $-\infty$
0/1 $FF_H$ non-zero Not a Number (NaN)

  1. Why must zero be a ``signal'' value?

  2. What is the largest exponent that can be represented for a normalized floating point number? What value of e is stored corresponding to this exponent?

  3. What is the smallest (most negative) exponent that can be represented, and what value of e is stored for this exponent?

  4. Give an example of a denormalized floating point number and indicate how it would be stored.


next up previous
Next: About this document ... Up: nasty-nums Previous: Floating Point Problems
MM Hugue 2004-09-08