An exponent field of 0 is used to encode numerical values that lie below the normal range. If the exponent and significand fields of an encoding are both 0, then the encoded value itself is 0 and the encoding is said to be a zero. If the exponent field is 0 and the significand field is not, then the encoding is either denormal or pseudo-denormal:
(a) If , then is a zero encoding for F.
(b) If and either is implicit or , then is a denormal encoding for F.
(c) If is explicit and , then is a pseudo-denormal encoding for F.
Note that a zero can have either sign:
There are two differences between the decoding formulas for denormal and normal encodings:
We also define a general decoding function:
PROOF: (a) is trivial; (b) and (c) follow from Lemmas 4.1.13 and 4.1.14.
The class of numbers that are representable as denormal encodings is recognized by the following predicate.
(c) is -exact.
If a number is so representable, then its encoding is constructed as follows.
Next, we examine the relationship between the decoding and encoding functions.
PROOF: Let , , , and . Since ,
Now by Definition 5.3.3,
Therefore, by Definitions 5.3.1, 5.3.6, and 5.1.4 and Lemmas 2.4.9 and 2.2.5,
PROOF: Let , , , and . By Lemma 2.4.1, is a -bit vector and by Lemma 2.4.7,
Since is -exact,
The smallest positive denormal is computed by the following function:
(b) is representable as a denormal in ;
(c) If is representable as a denormal in , then .
PROOF: Let , , and . It is clear that is positive. To show that is -exact, we need only observe that
Every number with a denormal representation is a multiple of the smallest positive denormal.
PROOF: Let and . For , let . Then and
Now suppose that is representable as a denormal. Let . Clearly, , and . It follows from Lemma 4.2.17 that , and consequently, is -exact. Thus, by Lemma 4.2.16, .
David Russinoff 2017-08-01