ВУЗ:
Составители:
23
IDIV (операнд-источник)
Команда IDIV (целочисленное деление) выполняет знаковое деление
содержимого аккумулятора (и его расширения) на операнд-источник. Если
операнд-источник однобайтовый, осуществляется деление двухбайтового
делимого, расположенного в регистрах AH и AL. Однобайтовое частное
получается в регистре AL, а однобайтовый остаток – в регистре AH. Для
бйтового целочисленного деления положительное частное не может быть
больше значения +127 (7Fh), а
отрицательное не может быть меньше -127
(81h). Если операнд-источник двухбайтовый, осуществляется деление
четырехбайтового делимого, расположенного в регистрах DX и AX.
Двухбайтовое частное при этом получается в регистре AX, а двухбайтовый
остаток – в регистре DX. Для двухбайтового целочисленного деления
положительное частное не может быть больше значения +32767 (7FFFh), а
отрицательное не может быть меньше значения -32767 (8001h). Если
частное положительное
и превышает максимум или отрицательное и
меньше минимума, генерируется прерывание типа 0, а частное и остаток
остаются неопределенными. Частным случаем такого события является
попытка деления на нуль. Содержимое флагов AF, CF, OF, PF, SF и ZF
после выполнения команды IDIV неопределено.
AAD
Команда AAD (коррекция деления неупакованных десятичных
чисел) модифицирует содержимое регистра AL перед выполнение деления
так, чтобы при выполнении
деления в частном получилось правильное
неупакованное десятичное число. Для получения правильного результата
после выполнения деления содержимое регистра AH должно быть
нулевым. Команда ААD воздействует на флаги PF, SF и ZF. Содержимое
флагов AF, CF и OF после выполнения команды ААD неопределено.
CBW
Команда CBW (преобразование байта в слово) расширяет знак байта
в регистре AL на весь регистр АХ. Команда CBW не
воздействует на
флаги. Команда CBW может быть использована для получения
двухбайтового делимого из однобайтового перед выполнением команды
деления.
CWD
Команда CWD (преобразование слова в двойное слово) расширяет
знак слова в регистре AХ на пару регистров АХ и DX. Команда CWD не
воздействует на флаги. Команда CWD может быть использована для
получения четырехбайтового делимого из двухбайтового
перед
выполнением команды деления.
23
IDIV (операнд-источник)
Команда IDIV (целочисленное деление) выполняет знаковое деление
содержимого аккумулятора (и его расширения) на операнд-источник. Если
операнд-источник однобайтовый, осуществляется деление двухбайтового
делимого, расположенного в регистрах AH и AL. Однобайтовое частное
получается в регистре AL, а однобайтовый остаток – в регистре AH. Для
бйтового целочисленного деления положительное частное не может быть
больше значения +127 (7Fh), а отрицательное не может быть меньше -127
(81h). Если операнд-источник двухбайтовый, осуществляется деление
четырехбайтового делимого, расположенного в регистрах DX и AX.
Двухбайтовое частное при этом получается в регистре AX, а двухбайтовый
остаток – в регистре DX. Для двухбайтового целочисленного деления
положительное частное не может быть больше значения +32767 (7FFFh), а
отрицательное не может быть меньше значения -32767 (8001h). Если
частное положительное и превышает максимум или отрицательное и
меньше минимума, генерируется прерывание типа 0, а частное и остаток
остаются неопределенными. Частным случаем такого события является
попытка деления на нуль. Содержимое флагов AF, CF, OF, PF, SF и ZF
после выполнения команды IDIV неопределено.
AAD
Команда AAD (коррекция деления неупакованных десятичных
чисел) модифицирует содержимое регистра AL перед выполнение деления
так, чтобы при выполнении деления в частном получилось правильное
неупакованное десятичное число. Для получения правильного результата
после выполнения деления содержимое регистра AH должно быть
нулевым. Команда ААD воздействует на флаги PF, SF и ZF. Содержимое
флагов AF, CF и OF после выполнения команды ААD неопределено.
CBW
Команда CBW (преобразование байта в слово) расширяет знак байта
в регистре AL на весь регистр АХ. Команда CBW не воздействует на
флаги. Команда CBW может быть использована для получения
двухбайтового делимого из однобайтового перед выполнением команды
деления.
CWD
Команда CWD (преобразование слова в двойное слово) расширяет
знак слова в регистре AХ на пару регистров АХ и DX. Команда CWD не
воздействует на флаги. Команда CWD может быть использована для
получения четырехбайтового делимого из двухбайтового перед
выполнением команды деления.
Страницы
- « первая
- ‹ предыдущая
- …
- 21
- 22
- 23
- 24
- 25
- …
- следующая ›
- последняя »
