One last point is that 0 is a special case. It should be 0.00000×1050 if we use our excess-50 notation, since 50-50=0. Actually, it doesn't matter what the exponent is if the mantissa is 0. However, floating point hardware reserves special bit patterns for certain error conditions. One of these is INF (infinity) which is supposed to be larger than any number. Usually, all 1s is reserved for that. Another is NaN (Not a Number) which is used to represent illegal calculations such as division by 0. Thus, the hardware usually insists on 0 using just one bit pattern and for reasons of safety and convenience this is usually all 0s. Bit patterns where the mantissa is 0 and the exponent is not are reserved for these error conditions. |