Часть 5. Инструкции сопроцессора
В этой части в алфавитном порядке описываются инструкции
сопроцессора 80х87.
Запись для каждой комбинации типов операндов кодируется с
помощью мнемоники.В приведенной ниже таблице поясняются идентифи-
каторы операндов, используемые в данном руководстве.
------------------------T---------------------------------------¬
¦ Идентификатор ¦ Пояснение ¦
+-----------------------+---------------------------------------+
¦ ST ¦ Вершина стека; регистр, находящийся в¦
¦ ¦ данный момент в вершине стека. ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ ST(1) ¦ Регистр в стеке с номером i (i<=0<=7),¦
¦ ¦ считая от вершины (i-й элемент). ST(1)¦
¦ ¦ - это следующий элемент в стеке, ST(2)¦
¦ ¦ находится ниже ST(2) и т.д. ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ Короткое вещественное ¦ Короткое вещественное (32 бита) число¦
¦ ¦ в памяти. ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ Длинное вещественное ¦ Длинное вещественное (64 бита) число в¦
¦ ¦ памяти. ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ Временное вещественное¦ Временное вещественное (80 бит) число¦
¦ ¦ памяти. ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ Упакованное десятичное¦ Упакованное десятичное целое (18 цифр,¦
¦ ¦ 10 байт) в памяти. ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ Целое размером в слово¦ Двоичное целое размером в слово (16¦
¦ ¦ бит). ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ Короткое целое ¦ Двоичное короткое целое (32 бита) в¦
¦ ¦ памяти. ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ Длинное целое ¦ Двоичное длинное целое (64 бита) в¦
¦ ¦ памяти. ¦
¦ ¦ ¦
+-----------------------+---------------------------------------+
¦ nn байт ¦ Область памяти размером nn байт. ¦
L-----------------------+----------------------------------------
Приведем перечень возможных исключительных ситуаций, которые
могут возникать в инструкциях:
- IS = недопустимый операнд из-за переполнения/потери значи-
мости стека.
- I = операнд, недопустимый по другой причине.
- D = ненормализованный операнд.
- Z = деление на ноль.
- O = переполнение.
- U = потеря значимости.
- P = неточный результат (точность).
F2XM1 Вычисление 2^x - 1.
-------------------------------------------------------
Исключительные ситуации: P, U, D, I, S.
F2XM1 (без операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T----T-------T-------T------------T---T----------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+----+-------+-------+------------+---+----------+
¦Нет операндов ¦ ¦211-476¦211-476¦242(140-279)¦ 2 ¦F2XM1 ¦
L--------------+----+-------+-------+------------+---+-----------
FABS Абсолютное значение.
-------------------------------------------------------
Исключительные ситуации: I.
FABS (без операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-----T-----T------T--------------T--T-----------+
¦ ¦87 ¦287 ¦387 ¦ 486 ¦ ¦ ¦
+--------------+-----+-----+------+--------------+--+-----------+
+Нет операндов ¦10-11¦10-17¦22 ¦ 3 ¦2 ¦F2XM1 ¦
L--------------+-----+-----+------+--------------+--+------------
FADD Целочисленное сложение.
-------------------------------------------------------
Исключительные ситуации: I, D, O, U, P.
FADD //источник/приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T------T------T-----T--------T---T---------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+------+------+-----+--------+---+---------------+
¦//ST,ST(i)/ ¦70-100¦70-100¦23-34¦10(8-20)¦2 ¦FADD ST,ST(4) ¦
¦ST(i),ST ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+------+------+-----+--------+---+---------------+
¦Короткое целое¦90-120¦90-120¦24-32¦10(8-20)¦2-4¦FADD AIR_TP[SI]¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+------+------+-----+--------+---+---------------+
¦Длинное целое ¦95-125¦95-125¦29-37¦10(8-20)¦2-4¦FADD [BX],MEAN ¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+------+------+-----+--------+---+----------------
FADDP Сложение вещественных чисел и извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I, D, O, U, P.
FADDP приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T-------T------T-----T--------T---T---------------+
¦ ¦ 87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+-------------+-------+------+-----+--------+---+---------------+
¦ST,ST(i) ¦ 75-105¦75-105¦23-34¦10(8-20)¦2 ¦FADDP ST(2),ST ¦
L-------------+-------+------+-----+--------+---+----------------
FBLD Упакованная десятичная загрузка (BCD).
-------------------------------------------------------
Исключительные ситуации: I.
FADDP источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T--------T-------T----T----------T----T------------+
¦ ¦ 87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+--------+-------+----+----------+----+------------+
¦Упакованный ¦ 290-310¦290-310¦5 ¦75(70-103)¦2-4 ¦FBLD YDT_SAL¦
¦десятичный ¦ ¦ ¦ ¦ ¦ ¦ ¦
L------------+--------+-------+----+----------+----+-------------
FBSTP Запись упакованного десятичного значения (BCD) и
извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I.
FBSTP источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-----------T--------T-------T-------T------------T-------------+
¦ ¦ 87 ¦287 ¦387 ¦486 ¦ ¦
+-----------+--------+-------+-------+------------+-------------+
¦Упакованный¦ 520-540¦512-534¦512-534¦175(172-176)¦2-4 FBSTR ¦
¦десятичный ¦ +EA ¦+EA ¦ ¦ ¦ [BX],CAST¦
L-----------+--------+-------+-------+------------+--------------
FCHS Изменение знака.
-------------------------------------------------------
Исключительные ситуации: I.
FCHS (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T------T------T------T------T----T----------------+
¦ ¦ 87 ¦ 287 ¦ 387 ¦486 ¦ ¦ ¦
+-------------+------+------+------+------+----+----------------+
¦Нет операндов¦ 10-17¦ 10-17¦ 24-25¦6 ¦ 2 ¦ FCHS ¦
L-------------+------+------+------+------+----+-----------------
FCLEX Очистка исключительных прерываний.
FNCLEX -------------------------------------------------------
Исключительные ситуации: нет.
FCLEX/FNCLEX (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T-----T-------T-----T--------------T--------------+
¦ ¦ 87 ¦ 287 ¦ 387 ¦ 486 ¦ ¦
+-------------+-----+-------+-----+--------------+--------------+
¦Нет операндов¦ 2-8 ¦ 2-8 ¦ 11 ¦ 7 ¦ FNCLEX ¦
L-------------+-----+-------+-----+--------------+---------------
FCOM Сравнение вещественных чисел.
-------------------------------------------------------
Исключительные ситуации: I, D.
FCOM//источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T------T------T-----T-----T--------T--------------+
¦ ¦ 87 ¦ 287 ¦ 387 ¦ 486 ¦ ¦ ¦
+-------------+------+------+-----+-----+--------+--------------+
¦//ST(i) ¦ 40-50¦ 40-50¦ 24 ¦ 4 ¦ ¦ FCOM ST(1) ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+-------------+------+------+-----+-----+--------+--------------+
¦Короткий ¦ 60-70¦ 60-70¦ 26 ¦ 4 ¦ 2-4 ¦ FCOM [BP], ¦
¦вещественный ¦ +EA ¦ ¦ ¦ ¦ ¦ UPPER_LIMIT ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+-------------+------+------+-----+-----+--------+--------------+
¦Длинный ¦ 65-75¦ 65-75¦ 31 ¦ 4 ¦ 2-4 ¦ FCOM LENGTH1 ¦
¦вещественный ¦ +EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L-------------+------+------+-----+-----+--------+---------------
FCOMP Сравнение вещественных чисел и извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I, D.
FCOMP//источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T-------T-----T-----T-----T--------T--------------+
¦ ¦ 87 ¦287 ¦ 387 ¦ 486 ¦ ¦ ¦
+-------------+-------+-----+-----+-----+--------+--------------+
¦//ST(i) ¦ 42-52 ¦45-52¦ 26 ¦ 4 ¦ 2 ¦ FCOM ST(2) ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+-------------+-------+-----+-----+-----+--------+--------------+
¦Короткий ¦ 63-73 ¦63-73¦ 26 ¦ 4 ¦ 2-4 ¦ FCOM [BP+2], ¦
¦вещественный ¦ +EA ¦ ¦ ¦ ¦ ¦ LIMIT_1 ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+-------------+-------+-----+-----+-----+--------+--------------+
¦Длинный ¦ 67-77 ¦67-77¦ 31 ¦ 4 ¦ 2-4 ¦ FCOMP DENSITY¦
¦вещественный ¦ +EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L-------------+-------+-----+-----+-----+--------+---------------
FCOMPP Сравнение вещественных чисел и извлечение из стека
дважды.
-------------------------------------------------------
Исключительные ситуации: I, D.
FCOMPP (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T-------T------T----T------T---------T------------+
¦ ¦ 87 ¦287 ¦387 ¦ 486 ¦ ¦ ¦
+-------------+-------+------+----+------+---------+------------+
¦Нет операндов¦ 45-55 ¦45-55 ¦26 ¦ 5 ¦ 2 ¦FCOMPP ¦
L-------------+-------+------+----+------+---------+-------------
FCOS Косинус ST(0) (только для процессоров 387 и i486).
-------------------------------------------------------
Исключительные ситуации: IS, I, D, U, P.
FCOS
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T-------T--------T------------T------T------------+
¦ ¦ 87 287¦387 ¦486 ¦ ¦ ¦
+-------------+-------+--------+------------+------+------------+
¦Нет операндов¦ ¦123-772*¦241(193-279)¦2 ¦FCOS ¦
L-------------+-------+--------+------------+------+-------------
* Эти временные значения соблюдаются в диапазоне /x/ /4. Для
операндов, не лежащих в данном диапазоне, для уменьшение операн-
дов может потребоваться до 76 дополнительных тактов.
FDECSTP Уменьшение указателя стека.
-------------------------------------------------------
Исключительные ситуации: нет.
FDECSTP (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T-----T----T---T--------T------------T------------+
¦ ¦ 87 ¦287 ¦387¦486 ¦ ¦ ¦
+-------------+-----+----+---+--------+------------+------------+
¦Нет операндов¦ 6-12¦6-12¦22 ¦3 ¦ 2 ¦FDECSTP ¦
L-------------+-----+----+---+--------+------------+-------------
FDISI Запрещение прерывания (только для сопроцессора 8087).
FNDISI -------------------------------------------------------
Исключительные ситуации: нет.
FDISI (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения: Слово Байты Пример ¦
¦ Типичное Диапазон операнда кода ¦
¦ значение ¦
+-------------T---------T----------T---------T------T-----------+
¦Нет операндов¦ 5 ¦2-8 ¦ 0 ¦ 2 ¦FDISI ¦
L-------------+---------+----------+---------+------+------------
FDIV Деление вещественных чисел.
-------------------------------------------------------
Исключительные ситуации: I, D, Z, O, U, P.
FDIV //источник/приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T--------T-------T-----T-----T------T-------------+
¦ ¦ 87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+-------------+--------+-------+-----+-----+------+-------------+
¦//ST(i),ST ¦ 193-203¦193-203¦88-91¦73 ¦ 2 ¦FDIV ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+-------------+--------+-------+-----+-----+------+-------------+
¦Короткое ¦ 215-225¦215-225¦89 ¦73 ¦ 2 ¦FDIV DISTANCE¦
¦вещественное ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+-------------+--------+-------+-----+-----+------+-------------+
¦Длинное ¦ 220-230¦220-230¦94 ¦73 ¦ 2-4 ¦FDIV ARC[DI] ¦
¦вещественное ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦//ST,ST(i) ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L-------------+--------+-------+-----+-----+------+--------------
FDIVP Деление вещественных чисел и извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I, D, Z, O, U, P.
FDIVP приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-----T------T------T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-----+------+------+--------------+
¦//ST(i),ST ¦197-207¦198-209¦88-91¦73 ¦2 ¦FDIVP ST(4),ST¦
L------------+-------+-------+-----+------+------+---------------
FDIVR Деление вещественных чисел с обращением.
-------------------------------------------------------
Исключительные ситуации: I, D, Z, O, U, P.
FDIVP //источник/приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T-----T-----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+-----+-----+--------------+
¦//ST,ST(i) ¦194-204¦198-207¦88-91¦73 ¦ 2 ¦FDIVR ST(2),ST¦
¦ST(i),ST ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+-----+-----+--------------+
¦Короткое целое¦216-226¦215-225¦89 ¦73 ¦ 2-4 ¦FDIVR [BX],P_R¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+-----+-----+--------------+
¦Длинное целое ¦221-231¦220-230¦94 ¦73 ¦ 2-4 ¦FDIVR REC,FREC¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-----+-----+-----+---------------
FDIVRP Деление вещественных чисел с обращением и извлечение из
стека.
-------------------------------------------------------
Исключительные ситуации: I, D, Z, O, U, P.
FDIVP приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-----T-----T------T---------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-----+-----+------+---------------+
¦ST(i),ST ¦198-208¦198-208¦88-91¦73 ¦ 2 ¦FDIVPR ST(1),ST¦
L------------+-------+-------+-----+-----+------+----------------
FENI Разрешение прерываний (только для сопроцессора 8087).
FNENI -------------------------------------------------------
Исключительные ситуации: нет.
FDIVP (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+---------------T---------------------------T-------T-----------+
¦ ¦87 ¦ ¦ ¦
+---------------+---------------------------+-------+-----------+
¦(нет операндов)¦5(2-8) ¦ 2 ¦FNENI ¦
L---------------+---------------------------+-------+------------
FFREE Освобождение регистра.
-------------------------------------------------------
Исключительные ситуации: нет.
FFREE приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+---------------T----T----T---T------------T-------T------------+
¦ ¦87 ¦287 ¦387¦486 ¦ ¦ ¦
+---------------+----+----+---+------------+-------+------------+
¦ST(i) ¦9-16¦9-16¦18 ¦3 ¦ 2 ¦FFREE ST(1) ¦
L---------------+----+----+---+------------+-------+-------------
FIADD Целочисленное сложение.
-------------------------------------------------------
Исключительные ситуации: I, D, O, P.
FFREE источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T------T--------T----T-----------+
¦ ¦87 ¦287 ¦387 ¦86 ¦ ¦ ¦
+--------------+-------+-------+------+--------+----+-----------+
¦Целое размером¦102-137¦102-137¦71-85 ¦2.5(19- ¦ 2-4¦FIADD ST_TR¦
¦в слово ¦+EA ¦ ¦ ¦2) ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+------+--------+----+-----------+
¦Короткое целое¦108-143¦108-143¦57-72 ¦4(20-35)¦ 2-4¦FIADD N[SI]¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+------+--------+----+------------
FICOM Целочисленное сравнение.
-------------------------------------------------------
Исключительные ситуации: I, D.
FICOM источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T---------T---T------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+---------+---+------------+
¦Целое размером¦72-86 ¦72-86 ¦71-75¦18(16-20)¦2-4¦FICOM T.PASS¦
¦в слово ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+---------+---+------------+
¦Короткое целое¦108-143¦108-143¦57-72¦24(20-35)¦2-4¦FICOM [BP+ ¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ 4].PARM_CNT¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-----+---------+---+-------------
FICOMP Целочисленное сравнение и извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I, D.
FICOMP источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-----T------T------T---------T---T--------------+
¦ ¦87 ¦ 287 ¦ 387 ¦ 486 ¦ ¦ ¦
+--------------+-----+------+------+---------+---+--------------+
¦Целое размером¦74-88¦74-88 ¦71-75 ¦18(16-20)¦2-4¦FICOMP T.PASS ¦
¦ слово ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-----+------+------+---------+---+--------------+
¦Короткое целое¦80-93¦80-93 ¦56-63 ¦24(20-35)¦2-4¦FICOMP N_SAMPL¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-----+------+------+---------+---+---------------
FIDIV Деление целых чисел.
-------------------------------------------------------
Исключительные ситуации: I, D, Z, O, U, P.
FIDIV источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T---T---T----------------+
¦ ¦87 ¦287 ¦387 ¦486¦ ¦ ¦
+--------------+-------+-------+-------+---+---+----------------+
¦Целое размером¦224-238¦224-238¦136-140¦73 ¦2-4¦FIDIV SURV.OBS ¦
¦в слово ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-------+---+---+----------------+
¦Короткое ¦230-243¦230-243¦120-127¦73 ¦2-4¦FIDIV REL_AN[DI]¦
¦целое ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-------+---+---+-----------------
FIDIVR Деление целых чисел с обращением.
-------------------------------------------------------
Исключительные ситуации: I, D, Z, O, U, P.
FIDIVR источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T---T---T----------------+
¦ ¦87 ¦287 ¦387 ¦486¦ ¦ ¦
+--------------+-------+-------+-------+---+---+----------------+
¦Целое размером¦225-239¦224-238¦135-141¦73 ¦2-4¦FIDIV [BP].X_COD¦
¦в слово ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-------+---+---+----------------+
¦Короткое ¦231-245¦230-243¦121-128¦73 ¦2-4¦FIDIV FREQUENCY ¦
¦целое ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-------+---+---+-----------------
FILD Загрузка целого.
-------------------------------------------------------
Исключительные ситуации: I.
FILD источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-----T-----T-----T-----------T---T----------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-----+-----+-----+-----------+---+----------------+
¦Целое разме-¦42-54¦46-54¦61-65¦11.5(9-12) ¦2-4¦FILD [BX].SEQ ¦
¦ром в слово ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-----+-----+-----+-----------+---+----------------+
¦Короткое ¦52-60¦52-60¦45-52¦14.5(13-16)¦2-4¦FILD STNDOFF[DI]¦
¦целое ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-----+-----+-----+-----------+---+----------------+
¦Длинное ¦60-68¦60-68¦56-67¦16.8(10-18)¦2-4¦FILD RESP.COUNT ¦
¦целое ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L------------+-----+-----+-----+-----------+---+-----------------
FIMUL Целочисленное умножение.
-------------------------------------------------------
Исключительные ситуации: I, D, O, P.
FIMUL источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T--------T---T-------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+--------+---+-------------+
¦Целое размером¦124-138¦124-138¦76-87¦8 ¦2-4¦FIMUL BEARING¦
¦в слово ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+--------+---+-------------+
¦Короткое ¦130-144¦130-144¦61-82¦8 ¦2-4¦FIMUL POS.Z_R¦
¦целое ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-----+--------+---+--------------
FINCSTP Увеличение указателя стека.
-------------------------------------------------------
Исключительные ситуации: нет.
FINCSTP (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-----T-----T-----T------T--------T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-----+-----+-----+------+--------+--------------+
¦Нет операндов ¦6-12 ¦6-12 ¦21 ¦3 ¦ 2 ¦FINCSTP ¦
L--------------+-----+-----+-----+------+--------+---------------
FINIT Инициализация процессора.
FNINIT -------------------------------------------------------
Исключительные ситуации: нет.
FINIT/FNNINIT (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T----T------T----T-------T--------T--------------+
¦ ¦87 ¦ 287 ¦387 ¦ 486 ¦ ¦ ¦
+--------------+----+------+----+-------+--------+--------------+
¦Нет операндов ¦2-8 ¦ 2-8 ¦33 ¦ 17 ¦ 2 ¦FINIT ¦
L--------------+----+------+----+-------+--------+---------------
FIST Запись целого значения.
-------------------------------------------------------
Исключительные ситуации: I, P.
FIST приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-----T-----T-----T-------T-------T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-----+-----+-----+-------+-------+--------------+
¦Целое значение¦80-90¦80-95¦82-95¦33.4 ¦2-4 ¦FIST OBS.COUNT¦
¦размером в ¦+EA ¦ ¦ ¦(29-34)¦ ¦ ¦
¦слово ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-----+-----+-----+-------+-------+--------------+
¦Короткое целое¦82-92¦82-92¦79-93¦32.4 ¦2-4 ¦FIST [BP].F_PU¦
¦ ¦+EA ¦ ¦ ¦(28-34)¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-----+-----+-----+-------+-------+---------------
FISTP Запись целого значения и извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I, P.
FISTP приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-----T-----T-----T-------T-----T----------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-----+-----+-----+-------+-----+----------------+
¦Целое значение¦82-92¦82-92¦82-95¦33.4 ¦2-4 ¦FISTP [BX]. ¦
¦размером в ¦+EA ¦ ¦ ¦(29-34)¦ ¦ ALPHA_COUNT[SI]¦
¦слово ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-----+-----+-----+-------+-----+----------------+
¦Короткое целое¦84-94¦84-94¦79-93¦32.4 ¦2-4 ¦FISTP CORR_TIME ¦
¦ ¦+EA ¦ ¦ ¦(29-34)¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-----+-----+-----+-------+-----+----------------+
¦Длинное целое ¦94- ¦94- ¦80-97¦32.4 ¦2-4 ¦FISTP PANEL.N_R ¦
¦ ¦105+ ¦105 ¦ ¦(29-34)¦ ¦ ¦
¦ ¦EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-----+-----+-----+-------+-----+-----------------
FISUB Целочисленное вычитание.
-------------------------------------------------------
Исключительные ситуации: I, D, O, P.
FISUB приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T---T---------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+---+---------------+
¦Целое значение¦102-137¦102-137¦71-83¦22.5 ¦2-4¦FISUB BASE_FREQ¦
¦размером в ¦+EA ¦ ¦ ¦(19-32¦ ¦ ¦
¦слово ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+------+---+---------------+
¦Короткое целое¦108-143¦108-143¦57-82¦24 ¦2-4¦FISUB TR_SZ[DI]¦
¦ ¦+EA ¦ ¦ ¦20-35)¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-----+------+---+----------------
FISUBR Целочисленное вычитание с обращением.
-------------------------------------------------------
Исключительные ситуации: I, D, O, P.
FISUBR источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T-----T---T----------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+-----+---+----------------+
¦Целое значение¦103-139¦102-137¦72-84¦22.5 ¦2-4¦FISUBR F[BX][SI]¦
¦размером в ¦+EA ¦ ¦ ¦19-32¦ ¦ ¦
¦слово ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+-----+---+----------------+
¦Короткое целое¦109-144¦108-143¦58-83¦24 ¦2-4¦FISUBR BALANCE ¦
¦ ¦+EA ¦ ¦ ¦20-35¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-----+-----+---+-----------------
FLD Загрузка вещественного значения.
-------------------------------------------------------
Исключительные ситуации: I, D.
FLD источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T---T-------T---T----------------+
¦ ¦87 ¦287 ¦387¦486 ¦ ¦ ¦
+--------------+-------+-------+---+-------+---+----------------+
¦ST(i) ¦17-22 ¦17-22 ¦14 ¦4 ¦2 ¦FLD ST(0) ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+---+-------+---+----------------+
¦Короткое целое¦38-56 ¦38-56 ¦20 ¦3 ¦2-4¦FLD READ[SI].PRS¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+---+-------+---+----------------+
¦Длинное целое ¦40-60 ¦40-60 ¦25 ¦3 ¦2-4¦FLD [BP].TEMPR ¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+---+-------+---+----------------+
¦Временное ¦53-60 ¦53-65 ¦44 ¦6 ¦2-4¦FLD SAVEREAD ¦
¦целое ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+---+-------+---+-----------------
FLDCTW Загрузка слова управления.
-------------------------------------------------------
Исключительные ситуации: нет.
FLDCW источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T----T------T-----T----------------+
¦ ¦87 ¦287 ¦387 ¦ 486 ¦ ¦ ¦
+------------+-------+-------+----+------+-----+----------------+
¦2 байта ¦7-14+EA¦7-14 ¦19 ¦ 4 ¦ 2-4¦FLDCW CONTROL_W ¦
L------------+-------+-------+----+------+-----+-----------------
FLDENV Загрузка операционной среды.
-------------------------------------------------------
Исключительные ситуации: нет.
FLDENV источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T-------T-------T-----T--------T--T---------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+-------------+-------+-------+-----+--------+--+---------------+
¦14 байт ¦35-45+ ¦35-45 ¦71 ¦44 ¦2-¦FLDENV [BP+6] ¦
¦ ¦EA ¦ ¦ ¦реальный¦4 ¦ ¦
¦ ¦ ¦ ¦ ¦или вир-¦ ¦ ¦
¦ ¦ ¦ ¦ ¦туальный¦ ¦ ¦
¦ ¦ ¦ ¦ ¦34 защи-¦ ¦ ¦
¦ ¦ ¦ ¦ ¦щенный ¦ ¦ ¦
L-------------+-------+-------+-----+--------+--+----------------
FLDLG2 Загрузка log10 2.
-------------------------------------------------------
Исключительные ситуации: I.
FLDLG2 (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦Нет операндов ¦18-24 ¦18-24 ¦41 ¦8 ¦2 ¦FLDLG2 ¦
L--------------+-------+-------+-----+------+----+---------------
FLDLN2 Загрузка ln 2.M
-------------------------------------------------------
Исключительные ситуации: I.
FLDLN2 (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦Нет операндов ¦17-23 ¦17-23 ¦41 ¦8 ¦2 ¦FLDLN2 ¦
L--------------+-------+-------+-----+------+----+---------------
FLDL2E Загрузка log2 e.
-------------------------------------------------------
Исключительные ситуации: I.
FLDL2E (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦Нет операндов ¦15-21 ¦15-21 ¦40 ¦8 ¦2 ¦FLDL2E ¦
L--------------+-------+-------+-----+------+----+---------------
FLDL2T Загрузка log2 10.
-------------------------------------------------------
Исключительные ситуации: I.
FLDL2T (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T----T------T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+----+------+--------------+
¦Нет операндов ¦16-22 ¦16-22 ¦40 ¦8 ¦ 2 ¦FLDL2T ¦
L--------------+-------+-------+-----+----+------+---------------
FLDPI Загрузка числа Pi
-------------------------------------------------------
Исключительные ситуации: I.
FLDPI (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦Нет операндов ¦16-22 ¦16-22 ¦40 ¦8 ¦2 ¦FLDPI ¦
L--------------+-------+-------+-----+------+----+---------------
FLDZ Загрузка +0.0.
-------------------------------------------------------
Исключительные ситуации: I.
FLDZ (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦Нет операндов ¦11-27 ¦11-17 ¦20 ¦4 ¦2 ¦FLDZ ¦
L--------------+-------+-------+-----+------+----+---------------
FLD1 Загрузка +1.0.
-------------------------------------------------------
Исключительные ситуации: I.
FLD1 (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦Нет операндов ¦15-21 ¦15-21 ¦24 ¦4 ¦2 ¦FLD1 ¦
L--------------+-------+-------+-----+------+----+---------------
FMUL Умножение вещественных чисел.
-------------------------------------------------------
Исключительные ситуации: I, D, O, U, P.
FMUL //источник/приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T-----T----T---------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+-----+----+---------------+
¦//ST(i),ST/ST,¦90-105 ¦90-145 ¦29-57¦16 ¦ 2 ¦FMUL ST,ST(3) ¦
¦90-105,ST(1)* ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+-----+----+---------------+
¦//ST(i),ST/ST,¦130-145¦90-145 ¦29-57¦16 ¦ 2 ¦FMUL ST,ST(3) ¦
¦ST,ST(1) ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+-----+----+---------------+
¦Короткое ¦110-125¦110-125¦27-35¦11 ¦ 2-4¦FMUL SPEED_FACT¦
¦вещественное ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+-----+----+---------------+
¦Длинное ¦112-126¦112-168¦32-57¦ ¦ 2-4¦FMUL [BP].HEIG ¦
¦вещественное* ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+-----+----+---------------+
¦Длинное ¦154-168¦112-168¦32-57¦ ¦ 2-4¦FMUL [BP].HEIG ¦
¦вещественное* ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-----+-----+----+----------------
* - когда один из операндов "короткий" (в дробной части он
содержит 40 завершающих нулей, например, он был загружен из ко-
роткого вещественного операнда в памяти).
FMULP Умножение вещественных чисел и извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I, D, O, U, P.
FMULP приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦ST(i),ST* ¦94-108 ¦198-208¦29-57¦ ¦2 ¦FMULP ST(1),ST¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦ST(i),ST ¦134-148¦198-208¦29-57¦16 ¦2 ¦FMULP ST(1),ST¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-----+------+----+---------------
* - когда один из операндов "короткий" (в дробной части он
содержит 40 завершающих нулей, например, он был загружен из ко-
роткого вещественного операнда в памяти).
FLNOP Нет операции.
-------------------------------------------------------
Исключительные ситуации: нет.
FNOP нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-----T------T----T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-----+------+----+--------------+
¦Нет операндов ¦10-16 ¦10-16 ¦12 ¦3 ¦2 ¦FNOP ¦
L--------------+-------+-------+-----+------+----+---------------
FPATAN Дробный арктангенс.
-------------------------------------------------------
Исключительные ситуации: U, P (операнды не проверяют-
ся).
FPATAN (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T---------T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦
+--------------+-------+-------+-------+---------+--------------+
¦Нет операндов ¦250-800¦250-800¦314-487¦5(2-17) 2¦FPATAN ¦
L--------------+-------+-------+-------+---------+---------------
FPREM Дробный остаток.
-------------------------------------------------------
Исключительные ситуации: I, D, U.
FPREM (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T------T--T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-------+------+--+--------------+
¦Нет операндов ¦15-190 ¦15-190 ¦74-155 ¦2(2-8)¦ 2¦FPREM ¦
L--------------+-------+-------+-------+------+--+---------------
FPREM1 Дробный остаток (только для процессоров 387 и i487).
-------------------------------------------------------
Исключительные ситуации: I, D, U.
FPREM1 (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T----T---------T--------T------------T-T---------+
¦ ¦87 ¦ 287 ¦ 387 ¦486 ¦ ¦ ¦
+--------------+----+---------+--------+------------+-+---------+
¦Нет операндов ¦ ¦ ¦ 95-185 ¦94.5(72-167)¦2¦FPREM1 ¦
L--------------+----+---------+--------+------------+-+----------
FPTAN Дробный тангенс.
-------------------------------------------------------
Исключительные ситуации: U, P (операнды не проверяют-
ся).
FPTAN (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T-------T-T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-------+-------+-+--------------+
¦Нет операндов ¦30-540 ¦30-540 ¦191-573¦244 ¦2¦FPTAN ¦
¦ ¦ ¦ ¦ ¦(200- ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦273) ¦ ¦ ¦
L--------------+-------+-------+-------+-------+-+---------------
FRNDINT Округление до целого.
-------------------------------------------------------
Исключительные ситуации: I, P.
FRNDINT (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T-------T-T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-------+-------+-+--------------+
¦Нет операндов ¦16-50 ¦16-50 ¦66-80 ¦29.1 ¦2¦FRNDINT ¦
¦ ¦ ¦ ¦ ¦(21-30)¦ ¦ ¦
L--------------+-------+-------+-------+-------+-+---------------
FRSTOR Восстановление сохраненного состояния.
-------------------------------------------------------
Исключительные ситуации: нет.
FRSTOR источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T------------T-----------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦
+--------------+-------+-------+-------+------------+-----------+
¦94 байта ¦197-207¦205-215¦308 ¦131 2-4¦FRSTOR[BP] ¦
¦ ¦+EA ¦ ¦ ¦реальный или¦ ¦
¦ ¦ ¦ ¦ ¦виртуальный ¦ ¦
¦ ¦ ¦ ¦ ¦240 ¦ ¦
¦ ¦ ¦ ¦ ¦защищенный ¦ ¦
L--------------+-------+-------+-------+------------+------------
Примечание: Значение времени выполнения для данной ин-
струкции не имеет смысла при определении полного времени
выполнения. В типичном случае (процессор 80286, сопроцессор
80287) выполнение в сопроцессоре 80287 происходит парал-
лельно с передачей операндов. Общее время выполнения инс-
трукции определяется передачей операндов. Для процессоров
80286:80287 соотношение равно 4:8, 1:1 и 8:5, а общее время
выполнения данной инструкции оценивается значениями 490,
302 и 227 тактов сопроцессора 80287 соответственно.
FSAVE Сохранение состояния.
FNSAVE -------------------------------------------------------
Исключительные ситуации: нет.
FSAVE/FNSAVE приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T--------T---T-----------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-------+--------+---+-----------+
¦94 байта ¦197-207¦205-215¦375-376¦ ¦2-4¦FSAVE [BP] ¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
L--------------+-------+-------+-------+--------+---+------------
Примечание: Значение времени выполнения для данной ин-
струкции не имеет смысла при определении полного времени
выполнения. В типичном случае (процессор 80286, сопроцессор
80287) выполнение в сопроцессоре 80287 происходит парал-
лельно с передачей операндов. Общее время выполнения инс-
трукции определяется передачей операндов. Для процессоров
80286:80287 соотношение равно 4:8, 1:1 и 8:5, а общее время
выполнения данной инструкции оценивается значениями 490,
302 и 227 тактов сопроцессора 80287 соответственно.
FSCALE Масштабирование.
-------------------------------------------------------
Исключительные ситуации: I, O, U.
FSCALE (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T-------T-T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-------+-------+-+--------------+
¦Нет операндов ¦32-38 ¦32-38 ¦67-86 ¦31 ¦2¦FSCALE ¦
¦ ¦ ¦ ¦ ¦(30-32)¦ ¦ ¦
L--------------+-------+-------+-------+-------+-+---------------
FSETPM Установка защищенного режима.
-------------------------------------------------------
Исключительные ситуации: нет.
FSETPM (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T---------------------------------T--------------+
¦ ¦287 ¦ ¦
+--------------+---------------------------------+--------------+
¦Нет операндов ¦2-8 ¦FSETPM ¦
L--------------+---------------------------------+---------------
FSIN Синус ST(0) (только для защищенного режима процессоров
386 и i486).
-------------------------------------------------------
Исключительные ситуации: IS, I, D, U, P.
FSIN
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T----------T---------------------T---------------+
¦ ¦387 ¦ 486 ¦ ¦
+--------------+----------+---------------------+---------------+
¦Нет операндов ¦122-771* ¦ 241(193-279) ¦ FSIN ¦
L--------------+----------+---------------------+----------------
* Эти временные значения соблюдаются в диапазоне /x/ /4. Для
операндов, не лежащих в данном диапазоне, для уменьшение операн-
дов может потребоваться до 76 дополнительных тактов.
FSINCOS Синус и косинус ST(0) (только для защищенного режима
процессоров 386 и i486).
-------------------------------------------------------
Исключительные ситуации: IS, I, D, U, P.
FSINCOS
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-----------T--------------------T---------------+
¦ ¦387 ¦ 486 ¦ ¦
+--------------+-----------+--------------------+---------------+
¦Нет операндов ¦194-809* ¦ 241(243-329) ¦ FSINCOS ¦
L--------------+-----------+--------------------+----------------
* Эти временные значения соблюдаются в диапазоне /x/ /4. Для
операндов, не лежащих в данном диапазоне, для уменьшение операн-
дов может потребоваться до 76 дополнительных тактов.
FSQRT Квадратный корень.
-------------------------------------------------------
Исключительные ситуации: I, D, P.
FSQRT (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T-----------T-T----------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-------+-----------+-+----------+
¦Нет операндов ¦180-186¦180-186¦122-129¦85.6(83-87)¦2¦FSQRT ¦
L--------------+-------+-------+-------+-----------+-+-----------
FST Запись вещественного значения.
-------------------------------------------------------
Исключительные ситуации: I, O, D, P.
FST приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-------T----T--------T------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-------+----+--------+------------+
¦ST(i) ¦15-22 ¦15-22 ¦11 ¦3 ¦ 2 ¦FST ST(3) ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-------+-------+-------+----+--------+------------+
¦Короткое ¦84-90 ¦84-90 ¦44 ¦7 ¦ 2-4 ¦FST CORR[DI]¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-------+-------+-------+----+--------+------------+
¦Длинное ¦96-104 ¦84-90 ¦45 ¦8 ¦ 2-4 ¦FST MEAN_RD ¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L------------+-------+-------+-------+----+--------+-------------
FSTCW Запись слова управления.
FNSTCW -------------------------------------------------------
Исключительные ситуации: нет.
FSTCW приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-------T-----T-------T------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-------+-----+-------+------------+
¦2 байта ¦12-18 ¦12-18 ¦15 ¦ ¦2-4 ¦FSTCW SV_CON¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
L------------+-------+-------+-------+-----+-------+-------------
FSTENV Сохранение операционной среды.
FNSENV -------------------------------------------------------
Исключительные ситуации: нет.
FSTENV приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T-------T-------T-------T-----T-------T-----------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+-------------+-------+-------+-------+-----+-------+-----------+
¦14 байт ¦40-50 ¦40-50 ¦103-104¦ ¦2-4 ¦FSTENV[BP] ¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
L-------------+-------+-------+-------+-----+-------+------------
FSTP Сохранение вещественного значения и извлечение из стека
-------------------------------------------------------
Исключительные ситуации: I, O, U, P.
FSTP приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-------T-----T------T-------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-------+-----+------+-------------+
¦ST(i) ¦17-24 ¦17-24 ¦12 ¦3 ¦2 ¦FSTCW ST(2) ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-------+-------+-------+-----+------+-------------+
¦Короткое ¦86-92 ¦86-92 ¦44 ¦7 ¦2-4 ¦FSTCW [BX].AD¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-------+-------+-------+-----+------+-------------+
¦Длинное ¦98-106 ¦96-106 ¦45 ¦8 ¦2-4 ¦FSTCW TOT_DOS¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-------+-------+-------+-----+------+-------------+
¦Временное ¦52-58 ¦52-58 ¦53 ¦8 ¦2-4 ¦FSTCW REG_SAV¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L------------+-------+-------+-------+-----+------+--------------
FSTSW Запись слова состояния.
FNSTSW -------------------------------------------------------
Исключительные ситуации: нет.
FSTSW/FNSTW приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-------T----T------T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-------+----+------+--------------+
¦2 байта ¦12-18 ¦12-18 ¦15 ¦ ¦ 2-4 ¦ FSTSW SAVE_ST¦
¦ ¦+EA ¦ ¦ ¦ ¦ ¦ ¦
L------------+-------+-------+-------+----+------+---------------
FSTSW AX Запись слова состояния в регистр AX.
FNSTSW AX -------------------------------------------------------
Исключительные ситуации: нет.
FSTSW приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T------T-------T-------T-----T-------T-------------+
¦ ¦87 ¦ 287 ¦ 387 ¦ 486 ¦ ¦ ¦
+------------+------+-------+-------+-----+-------+-------------+
¦AX ¦ ¦ 10-16 ¦ 13 ¦ 3 ¦ 2 ¦FSTSW AX ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
L------------+------+-------+-------+-----+-------+--------------
FSUB Вычитание вещественных значений.
-------------------------------------------------------
Исключительные ситуации: I, O, U, P.
FSUB //источник/приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-------T-------T----T-------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-------+-------+----+-------------+
¦//ST,ST(i)/ ¦70-100 ¦70-100 ¦26-37 ¦7(5-17)¦2 ¦FSUB ST,ST(2)¦
¦ST(i),ST ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-------+-------+-------+-------+----+-------------+
¦Короткое ¦90-120 ¦90-120 ¦24-32 ¦7(5-17)¦2-4 ¦FSUB BASE_VAL¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
+------------+-------+-------+-------+-------+----+-------------+
¦Длинное ¦95-125 ¦95-125 ¦28-36 ¦7(5-17)¦2-4 ¦FSUB COORD.X ¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
L------------+-------+-------+-------+-------+----+--------------
FSUBP Вычитание вещественных значений и извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I, O, U, P.
FSUBP приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-------T-------T----T-------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-------+-------+----+-------------+
¦ST(i),ST ¦75-105 ¦75-105 ¦26-37 ¦7(5-17)¦2 ¦FSUB ST,ST(2)¦
L------------+-------+-------+-------+-------+----+--------------
FSUBR Вычитание вещественных значений с обращением.
-------------------------------------------------------
Исключительные ситуации: I, O, U, P.
FSUB //источник/приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-------T-------T---T--------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-------+-------+---+--------------+
¦//ST,ST(i)/ ¦70-100 ¦70-100 ¦26-37 ¦7(5-17)¦2 ¦FSUBR ST,ST(1)¦
¦ST(i),ST ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦Короткое ¦90-120 ¦90-120 ¦24-32 ¦7(5-17)¦2-4¦FSUBR VECT[SI]¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦Длинное ¦95-125 ¦95-125 ¦28-36 ¦7(5-17)¦2-4¦FSUBR [BX].IND¦
¦вещественное¦+EA ¦ ¦ ¦ ¦ ¦ ¦
L------------+-------+-------+-------+-------+---+---------------
FSUBRP Вычитание вещественных значений с обращением и извлечение из стека.
-------------------------------------------------------
Исключительные ситуации: I, O, U, P.
FSUBRP приемник, источник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+------------T-------T-------T-------T-------T-T----------------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+------------+-------+-------+-------+-------+-+----------------+
¦ST(i),ST ¦75-105 ¦75-105 ¦26-37 ¦7(5-17)¦2¦ FSUBRP ST,ST(2)¦
L------------+-------+-------+-------+-------+-+-----------------
FTST Проверка вершины стека на +0.0
-------------------------------------------------------
Исключительные ситуации: I, D.
FTST (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T------T-------T------T---------T---T------------+
¦ ¦87 ¦ 287 ¦ 387 ¦ 486 ¦ ¦ ¦
+--------------+------+-------+------+---------+---+------------+
¦Нет операндов ¦38-48 ¦ 38-48 ¦ 28 ¦ 4 ¦ 2 ¦ FTST ¦
L--------------+------+-------+------+---------+---+-------------
FUCOM Неупорядоченное сравнение.
-------------------------------------------------------
Исключительные ситуации: IS, I, D.
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T------T------T---------------------T------------+
¦ ¦387 ¦ 486 ¦ ¦ ¦
+--------------+------+------+---------------------+------------+
¦//ST(i) ¦24 ¦ 4 ¦ 2 ¦ FUCOM ST(1)¦
L--------------+------+------+---------------------+-------------
FUCOMP Неупорядоченное сравнение (только для сопроцессоров 387 и i486).
-------------------------------------------------------
Исключительные ситуации: IS, I, D.
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-----T----------------------T------T------------+
¦ ¦387 ¦ 486 ¦ ¦ ¦
+--------------+-----+----------------------+------+------------+
¦//ST(i) ¦26 ¦ 4 ¦ 2 ¦FUCOMP ST(2)¦
L--------------+-----+----------------------+------+-------------
FUCOMPP Неупорядоченное сравнение (только для сопроцессоров 387 и i486).
-------------------------------------------------------
Исключительные ситуации: IS, I, D.
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-----T------------------------T----T------------+
¦ ¦387 ¦ 486 ¦ ¦ ¦
+--------------+-----+------------------------+----+------------+
¦Нет операндов ¦26 ¦ 4 ¦ 2 ¦ FUCOMPP ¦
L--------------+-----+------------------------+----+-------------
FWAIT Ожидание.
-------------------------------------------------------
Исключительные ситуации: нет (инструкция ЦП).
FWAIT (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T------T-----------------T---------T-------------+
¦ ¦387 ¦ 486 ¦ ¦ ¦
+--------------+------+-----------------+---------+-------------+
¦Нет операндов ¦3+5n* ¦ 4 ¦ 1 ¦ FWAIT ¦
¦ ¦ ¦ ¦ ¦ ¦
+--------------+------+-----------------+---------+-------------+
¦ * - n=сколько раз ЦП проверяет линию BUSY перед завершением¦
¦выполнения предыдущей инструкции. ¦
L----------------------------------------------------------------
FXAM Проверка вершины стека.
-------------------------------------------------------
Исключительные ситуации: нет.
FXAM (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T-------T-----T----------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-------+-------+-----+----------+
¦Нет операндов ¦12-23 ¦12-23 ¦30-38 ¦8 ¦ 2 ¦FXAM ¦
L--------------+-------+-------+-------+-------+-----+-----------
FXCH Обмен содержимого регистров.
-------------------------------------------------------
Исключительные ситуации: I.
FXCH //приемник
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T------T-------T-------T---------T----T-----------+
¦ ¦87 ¦ 287 ¦ 387 ¦ 486 ¦ ¦ ¦
+-------------+------+-------+-------+---------+----+-----------+
¦//ST(i) ¦10-15 ¦ 10-15 ¦ 18 ¦ 4 ¦ 2 ¦FXCH ST(2) ¦
L-------------+------+-------+-------+---------+----+------------
FXTRACT Выделение экспоненты и значащей части.
-------------------------------------------------------
Исключительные ситуации: I.
FXTRACT (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T-------T-------T-------T---------T---T----------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+-------+-------+-------+---------+---+----------+
¦Нет операндов ¦27-55 ¦27-55 ¦70-76 ¦19(16-20)¦2 ¦FXTRACT ¦
L--------------+-------+-------+-------+---------+---+-----------
FYL2X Y * log2 X.
-------------------------------------------------------
Исключительные ситуации: P (операнды не проверяются).
FYL2X (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+--------------T--------T--------T-------T------------T---------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦
+--------------+--------+--------+-------+------------+---------+
¦Нет операндов ¦100-1100¦900-1100¦120-538¦311(196-329)¦FYL2X ¦
L--------------+--------+--------+-------+------------+----------
FYL2XP1 Y * log2 (X+1).
-------------------------------------------------------
Исключительные ситуации: P (операнды не проверяются).
FYL2XP1 (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример ¦
+-------------T--------T--------T-------T------------T--T-------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+-------------+--------+--------+-------+------------+--+-------+
¦Нет операндов¦100-1000¦700-1000¦257-547¦313(171-326)¦2 ¦FYL2XP1¦
L-------------+--------+--------+-------+------------+--+--------
F2XM1 2 с степени X, минус 1.
-------------------------------------------------------
Исключительные ситуации: P (операнды не проверяются).
F2XM1 (нет операндов)
----------------------------------------------------------------¬
¦Операнды Такты выполнения Байты кода Пример¦
+--------------T--------T--------T-------T------------T--T------+
¦ ¦87 ¦287 ¦387 ¦486 ¦ ¦ ¦
+--------------+--------+--------+-------+------------+--+------+
¦Нет операндов ¦310-630 ¦310-630 ¦211-476¦242(140-279)¦ 2¦F2XM1 ¦
L--------------+--------+--------+-------+------------+--+-------
Назад | Содержание
|
|