INTEL
®
CELERON® PROCESSOR SPECIFICATION UPDATE
88
The
Intel Architecture Software Developer's Manual, Vol 2: Instruction Set Reference
page 3-173
currently states:
Operation
IF (((AL AND 0FH) > 9) or AF = 1)
THEN
AL
←
AL + 6;
CF
←
CF OR CarryFromLastAddition; (* CF OR carry from AL
←
AL + 6 *)
AF
←
1;
ELSE
AF
←
0;
FI;
IF ((AL AND F0H) > 90H) or CF = 1)
THEN
AL
←
AL + 60H;
CF
←
1;
ELSE
CF
←
0;
FI;
It should state:
Operation
old_AL
←
AL;
old_CF
←
CF;
CF
←
0;
IF (((AL AND 0FH) > 9) or AF = 1)
THEN
AL
←
AL + 6;
CF
←
old_CF or (Carry from AL
←
AL + 6);
AF
←
1;
ELSE
AF
←
0;
FI;
IF ((old_AL > 99H) or (old_CF = 1)
THEN
AL
←
AL + 60H;
CF
←
1;
ELSE
CF
←
0;
FI;
C15. DAA—Decimal Adjust AL after Addition