Инструкция AAM в EMU8086 - PullRequest
       13

Инструкция AAM в EMU8086

0 голосов
/ 06 декабря 2018

Каков механизм AAM инструкции на языке ассемблера?
Предположим:

MOV AL,35H
MOV BL,33H
MUL BL
AAM

Вот как AAM работает?

1 Ответ

0 голосов
/ 09 декабря 2018
MOV AL,35H   ; This is 53 in decimal
MOV BL,33H   ; This is 51 in decimal
MUL BL
AAM

Инструкция AAM делит регистр AL на 10, оставляя частное в AH, а остаток в AL.

, начиная с AAM зависит только от значения в AL, вам нужно сначала определить его значение.

Учитывая, что AL = 53 и BL = 51, MUL BL (что их умножает) оставляет 53 * 51 = 2703в AX.
Это переводит в AH = 10 и AL = 143, потому что AX = AH * 256 + AL.

Применение AAM затем производит AH = 143 \ 10 = 14 и AL = 143 % 10 = 3.

Хотя и сконструированный таким образом, использование инструкции AAM не ограничивается неупакованным BCD.Вы можете использовать его как общее деление на 10 инструкций!С дивидендом в AL только конечно.

...