Ascii Adjust for Multiplication
86/88 |
Y |
186 |
Y |
286 |
Y |
386 |
Y |
486 |
Y |
AAM |
Ovfl |
? |
Dir |
N |
Int |
N |
Trap |
N |
Sign |
Y |
Zero |
Y |
Aux |
? |
Prty |
Y |
Carry |
? |
This instruction corrects the result of a previous multiplication of
two valid unpacked BCD operands. A valid 2-digit unpacked BCD number
is taken from AX, the adjustment is performed, and the result is
returned to AX. The high-order nibbles of the operands that were
multiplied must have been 0 for this instruction to produce a correct
result.
Note: Unpacked BCD stores one digit per byte; AH contains
the most-significant digit and AL the least-
significant digit.
------------------------------------ Timing ----------------------------------
OpCode Instruction 386 286 86
D4 0A AAM 17 16 83
------------------------------------ Logic -----------------------------------
AH = AL / 10
AL = AL MOD 10
See Also AAA AAD AAS DAA MUL IMUL Flags |