7-6
FLOATING-POINT UNIT
Figure 7-3 shows how the encodings for these numbers and non-numbers fit into the real number
continuum. The encodings shown here are for the IEEE single-precision (32-bit) format, where
the term S indicates the sign bit, E the biased exponent, and F the fraction. (The exponent
values are given in decimal.)
The FPU can operate on and/or return any of these values, depending on the type of computation
being performed. The following sections describe these number and non-number classes.
7.2.3.1.SIGNED ZEROS
Zero can be represented as a +0 or a
?
0 depending on the sign bit. Both encodings are equal in
value. The sign of a zero result depends on the operation being performed and the rounding
mode being used. Signed zeros have been provided to aid in implementing interval arithmetic.
The sign of a zero may indicate the direction from which underflow occurred, or it may indicate
the sign of an
?
that has been reciprocated.
7.2.3.2.NORMALIZED AND DENORMALIZED FINITE NUMBERS
Non-zero, finite numbers are divided into two classes: normalized and denormalized. The
normalized finite numbers comprise all the non-zero finite values that can be encoded in a
normalized real number format between zero and
?
. In the single-real format shown in Figure
7-3, this group of numbers includes all the numbers with biased exponents ranging from 1 to
254
10
(unbiased, the exponent range is from
?
126
10
to +127
10
).
Figure 7-3. Real Numbers and NaNs
100
SEF
?
0
10
?
Denormalized
Finite
NaN
11...254
Any Value
?
Normalized
Finite
12550
?
?
2551.0XX
2
?
SNaN
2551.1XX
?
QNaN
NOTES:
1. Sign bit ignored.
2. Fractions must be non-zero.
000
SEF
00
NaN
01...254
Any Value
02550
X
1
2551.0XX
2
2551.1XX
+0
+Denormalized
Finite
+Normalized
Finite
+?
+SNaN
+QNaNX
1
X
1
X
1
Real Number and NaN Encodings For 32-Bit Floating-Point Format
?
Denormalized Finite
?
Normalized Finite
?
0
?
?
+
?
+Denormalized Finite
+Normalized Finite
+0
0.XXX
2
0.XXX
2