CPU Computing 75
to a number in this interval, the corresponding narrow subnormal number is
0.s
13
s
12
s
11
s
10
+ ε,whereε is zero or one based on rounding. Define integers
i and f by i.f = s
13
···s
10
.s
9
···s
0
. Using round-to-nearest with ties-to-even,
the value ε is one when 0.f > 1/2orwhen0.f =1/2andi is odd. If i =15
(all s-bits are 1), then ε = 1 and the addition causes a carry out of s
13
.The
result is i = 16. When using bit-manipulation methods in the source code, the
addition is to the trailing significand. The carry-out is to the low-order bit
of the biased exponent. In the current case, the (left-shifted) biased exponent
is zero (the target is a narrow subnormal), so OR-ing the trailing significand
into the final encoding amounts to increasing the expo ...