ВУЗ:
Составители:
65
грузки констант, основных арифметических команд, сравнения, управле-
ния сопроцессором. Все команды сопроцессоры относятся к классу т.н.
ESC- команд и начинаются с битовой последовательности 11011 (D1
16
).
Ниже приведены ассемблерная мнемоника и краткое описание действий
команд. Операнды обозначены следующим образом:
• m32real, m64real, m80real – вещественные числа в памяти;
• m16int, m32int, m64int – целочисленные значения в памяти;
• m80bcd – упакованное двоично-десятичное число;
• st(i) - регистр стека сопроцессора, смещенный от верхушки на i;
• reg/mem – операнд в регистре/памяти.
Команды передачи данных и загрузки констант
FLD src st(0)
← src (m32real/m64real/m80real)
FILD src st(0) ← src (m16int/m32int/m64int)
FBLD src st(0) ← src (m80bcd)
FLDZ st(0) ← 0.0
FLD1 st(0) ← 1.0
FLDPI st(0) ← π
FLDL2T st(0) ← log
2
(10)
FLDL2E st(0) ← log
2
(e)
FLDLG2 st(0) ← log
10
(2)
FLDLN2 st(0) ← ln(2)
FST dest dest ← st(0) (m32real/m64real)
FSTP dest dest ← st(0) (m32real/64/80); “вытолкнуть” стек
FIST dest dest ← st(0) (m16int/32)
FISTP dest dest ← st(0) (m16int/32/64); “вытолкнуть” стек
FBST dest dest ← st(0) (m80bcd)
FBSTP dest dest ← st(0) (m80bcd); “вытолкнуть” стек
Команды сравнения
FCOM Установить флаги как для st(0) - st(1)
FCOM op Установить флаги как для st(0) - op (m32real/64)
FCOMP op Сравнить st(0) с op (reg/m32real/64); “вытолкнуть” стек
FCOMPP Сравнить st(0) с st(1); “вытолкнуть” стек 2 раза
FICOM op Установить флаги как для st(0) - op (m16int/m32int)
FICOMP op Сравнить st(0) с op (m16int/m32int); “вытолкнуть” стек
FTST Сравнить st(0) с 0.0
FXAM Установить флаги по содержимому st(0)
FUCOMP st(i) Сравнить st(0) с st(i); “вытолкнуть” стек
FUCOMPP st(i) Сравнить st(0) с st(i); “вытолкнуть” стек 2 раза
Арифметические команды и команды трансцендентных функций
FADD st(0) ← st(0) + st(1)
65
грузки констант, основных арифметических команд, сравнения, управле-
ния сопроцессором. Все команды сопроцессоры относятся к классу т.н.
ESC- команд и начинаются с битовой последовательности 11011 (D116).
Ниже приведены ассемблерная мнемоника и краткое описание действий
команд. Операнды обозначены следующим образом:
• m32real, m64real, m80real вещественные числа в памяти;
• m16int, m32int, m64int целочисленные значения в памяти;
• m80bcd упакованное двоично-десятичное число;
• st(i) - регистр стека сопроцессора, смещенный от верхушки на i;
• reg/mem операнд в регистре/памяти.
Команды передачи данных и загрузки констант
FLD src st(0) ← src (m32real/m64real/m80real)
FILD src st(0) ← src (m16int/m32int/m64int)
FBLD src st(0) ← src (m80bcd)
FLDZ st(0) ← 0.0
FLD1 st(0) ← 1.0
FLDPI st(0) ← π
FLDL2T st(0) ← log2(10)
FLDL2E st(0) ← log2(e)
FLDLG2 st(0) ← log10(2)
FLDLN2 st(0) ← ln(2)
FST dest dest ← st(0) (m32real/m64real)
FSTP dest dest ← st(0) (m32real/64/80); вытолкнуть стек
FIST dest dest ← st(0) (m16int/32)
FISTP dest dest ← st(0) (m16int/32/64); вытолкнуть стек
FBST dest dest ← st(0) (m80bcd)
FBSTP dest dest ← st(0) (m80bcd); вытолкнуть стек
Команды сравнения
FCOM Установить флаги как для st(0) - st(1)
FCOM op Установить флаги как для st(0) - op (m32real/64)
FCOMP op Сравнить st(0) с op (reg/m32real/64); вытолкнуть стек
FCOMPP Сравнить st(0) с st(1); вытолкнуть стек 2 раза
FICOM op Установить флаги как для st(0) - op (m16int/m32int)
FICOMP op Сравнить st(0) с op (m16int/m32int); вытолкнуть стек
FTST Сравнить st(0) с 0.0
FXAM Установить флаги по содержимому st(0)
FUCOMP st(i) Сравнить st(0) с st(i); вытолкнуть стек
FUCOMPP st(i) Сравнить st(0) с st(i); вытолкнуть стек 2 раза
Арифметические команды и команды трансцендентных функций
FADD st(0) ← st(0) + st(1)
Страницы
- « первая
- ‹ предыдущая
- …
- 63
- 64
- 65
- 66
- 67
- …
- следующая ›
- последняя »
