FDIV/FDIVP/FIDIV
• FDIVP
делитель
FDIV/FDIVP делимое, делитель
•
DC /б
D8 FO + i FDIV
ST(i)
DC F8 + i FDIV
DE
i FDIVP
DE F9 FDIVP
• Деление двух чисел.
Действия: команды FDIV/FDIVP/FIDIV имеют несколько вариантов расположения операндов.
ii Для команды без операндов делимое находится в регистре
делитель — в регистре
Команда выполняет деление:
Последнее действие — выталкивание значе-
ния из ST(0). Окончательный результат — в регистре
в Для команды с одним операндом (делитель) делимое находится в регистре
делитель —
в ячейке памяти
или ml6(32)int. Команда выполняет деление
=
тель.
ii Для команды с двумя операндами делимое и делитель хранятся в двух регистрах
один
из которых — ST(0). Выполняется деление делимое - (делимое/делитель).
Флаги
см. описание команды
558 Приложение. Система команд
IA-32
FDIVR/FDIVRP/FIDIVR
• FDIVRP
FDIVR/FIDIVR делимое
FDIVR/FDIVRP делитель, делимое
•
m32real
/7
D8 F8 +
DC FO + i FDIVR
+ FDIVRP
DE
FDIVRP
FIDIVRml6int
• Деление двух чисел в обратном порядке.
Действия: команды имеют три варианта расположения операндов.
Для команды без операндов делимое находится в регистре
делитель — в регистре
Команда выполняет деление:
-
Последнее действие - выталкивание значе-
ния из регистра
Результат операции — в регистре ST(0).
Для команды с одним операндом делимое находится в ячейке памяти
или
делитель — в регистре
Команда выполняет деление:
=
Для команды с двумя операндами делимое и делитель хранятся в двух регистрах стека, один
из которых —
Команда выполняет деление делитель = (делимое/делитель).
Флаги (SWR): см. описание команды FDIV.
FFREE
• FFREE регистр_сопроцессора
•
+ FFREE
• Освобождение регистра стека сопроцессора.
Действия: команда выбирает в регистре тегов TWR двухразрядное поле tt, соответствующее
регистру
и устанавливает в нем значение
Флаги (SWR):
CO, C2, СЗ не определены.
• FICOM/FICOMP операнд
•
DE/3
• Сравнение целого и вещественного значений.
Действия: сравнение значения в регистре
и целочисленного операнда в ячейке памяти
Результат сравнения определяется состоянием битов СЗ, С2 и СО регистра
сопро-
цессора (табл.
19). Последнее действие FICOMP — выталкивание значения из вершины стека.
Таблица П.
Результат сравнения операндов по состоянию битов СЗ, С2 и СО регистра SWR
Результат сравнения
Операнды несравнимы
Второй операнд больше первого
Второй операнд меньше первого
Второй
равен первому
Биты СЗ, С2 и СО регистра SWR
1,
СЗ
- 0, С2 - 0, СО - 1
СЗ
- 0, С2 - 0, СО = 0
Флаги (SWR): см. описание команды FCOM.
Команды сопроцессора 559
Do'stlaringiz bilan baham: |