2 Computational Units
2 – 34
For the first stage, the upper half of the input must be operated on first.
This first exponent derivation loads the exponent value into SE. The
second exponent derivation, operating on the lower half of the number
will not alter the SE register unless SE = –15. This happens only when the
first half contained all sign bits. In this case, the second operation will load
a value into SE. (See Table 2.5) This value is used to control both parts of
the normalization that follows.
For the second stage, now that SE contains the correct exponent value, the
order of operations is immaterial. The first half (whether HI or LO) is
normalized without the [SR OR] and the second half is normalized with
[SR OR] to create one double-precision value in SR. The (HI) and (LO)
modifiers identify which half is being processed.
Here is a complete example of a typical double precision normalization.
1. Detect Exponent, Modifier = HI
First Input:
11110110 11010100
(Must be upper half)
SE set to:
-3
2. Detect Exponent, Modifier = LO
Second Input:
01101110 11001011
SE unchanged, still
-3
3. Normalize, Modifier=HI, No [SR OR], SE = –3
First Input:
11110110 11010100
SR:
10110110 10100 000 00000000 00000000
4. Normalize , Modifier=LO, [SR OR], SE = –3
Second Input:
01101110 11001011
SR:
10110110 10100 011 01110110 01011 000