DATA REPRESENTATION AND ROUNDING
MOTOROLA
DATA ARITHMETIC LOGIC UNIT 3 - 15
A2 A1 A0
XX . .XX XXX . . .XXX0100 011XXX . . . . XXX
55 48 47 24 23 0
CASE I: IF A0 < $800000 (1/2), THEN ROUND DOWN (ADD NOTHING)
BEFORE ROUNDING AFTER ROUNDING
AFTER ROUNDING
AFTER ROUNDING
BEFORE ROUNDING
BEFORE ROUNDING
0
A2 A1 A0*
XX . .XX XXX . . .XXX0100 000 . . . . . . . . 000
55 48 47 24 23 0
CASE II: IF A0 > $800000 (1/2), THEN ROUND UP (ADD 1 TO A1)
A2 A1 A0
XX . .XX XXX . . .XXX0100 1110XX . . . .XXX
55 48 47 24 23 0
1
A2 A1 A0*
XX . .XX XXX . . .XXX0101 000 . . . . . . . . 000
55 48 47 24 23 0
CASE III: IF A0 = $800000 (1/2), AND THE LSB OF A1 = 0,THEN ROUND DOWN (ADD NOTHING)
A2 A1 A0
XX . .XX XXX . . .XXX0100 10000 . . . . . . 000
55 48 47 24 23 0
0
A2 A1 A0*
XX . .XX XXX . . .XXX0100 000 . . . . . . . . 000
55 48 47 24 23 0
CASE IV: IF A0 = $800000 (1/2), AND THE LSB = 1, THEN ROUND UP (ADD 1 TO A1)
BEFORE ROUNDING
A2 A1 A0
XX . .XX XXX . . .XXX0101 10000 . . . . . . 000
55 48 47 24 23 0
1
AFTER ROUNDING
A2 A1 A0*
XX . .XX XXX . . .XXX0110 000 . . . . . . . . 000
55 48 47 24 23 0
Figure 3-10 Convergent Rounding
*A0 is always clear; performed during RND, MPYR, MACR