Двоичное деление
Команды деления
Умножение десятичных чисел
Умножение десятичных чисел также выполняется в два этапа:
1. Двоичное умножение.
2. Десятичная коррекция результата.
Десятичное умножение выполняется только в распакованном формате и старши полубайт обязательно должен содержать 0. (!!!!!!!)
ААМ – корректировка
Корректировка анализирует полученный результат в регистре АХ и приводит его к десятичному формату.
Пример:
A db 6
B db 8
MOV AL, A
MUL B // AL*B ® AX=0030H
AAM //AX=0408
беззнаковое DIV ОП1 //AK2 / ОП1 ® частное: АК, остаток: АК’
знаковое IDIV ОП1 //AK2 / ОП1 ® частное: АК, остаток: АК’
1. Схема однобайтного деления
2. Схема двубайтного деления
Команда флаги не формирует , но вызывает прерывание типа «деление на ноль» в случае, если частное не может поместиться в аккумулятор.
CBW // знаковое расширение из байта в слово (AL®AX)
CWD // знаковое расширение слова до пары (AХ®DX:AX)
Пример:
A db 48H //72
B db 10H //16
MOV AL, A
MOV AH, 0
DIV B //AL=4, AH=8
MOV AL, A
CBW
IDIV B
Дата добавления: 2014-01-15 ; Просмотров: 351 ; Нарушение авторских прав? ; Мы поможем в написании вашей работы!
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет