x86 architecture FPU opcodes
D8h 00...3Fh |
|
FADD single real |
FMUL single real |
FCOM single real |
FCOMP single real |
FSUB single real |
FSUBR single real |
FDIV single real |
FDIVR single real |
D8h 40...7Fh |
|
FADD single real |
FMUL single real |
FCOM single real |
FCOMP single real |
FSUB single real |
FSUBR single real |
FDIV single real |
FDIVR single real |
D8h 80...BFh |
|
FADD single real |
FMUL single real |
FCOM single real |
FCOMP single real |
FSUB single real |
FSUBR single real |
FDIV single real |
FDIVR single real |
|
D8h C0...FFh |
|
FADD ST,ST(i) |
FMUL ST,ST(i) |
FCOM ST(i) |
FCOMP ST(i) |
FSUB ST,ST(i) |
FSUBR ST,ST(i) |
FDIV ST,ST(i) |
FDIVR ST,ST(i) |
D9h 00...3Fh |
|
FLD single real |
|
FST single real |
FSTP single real |
FLDENV M14/M28 |
FLDCW Mw |
FNSTENV M14/M28 |
FNSTCW Mw |
D9h 40...7Fh |
|
FLD single real |
|
FST single real |
FSTP single real |
FLDENV M14/M28 |
FLDCW Mw |
FNSTENV M14/M28 |
FNSTCW Mw |
D9h 80...BFh |
|
FLD single real |
|
FST single real |
FSTP single real |
FLDENV M14/M28 |
FLDCW Mw |
FNSTENV M14/M28 |
FNSTCW Mw |
|
D9h C0...C7h |
|
FLD ST(0) |
FLD ST(1) |
FLD ST(2) |
FLD ST(3) |
FLD ST(4) |
FLD ST(5) |
FLD ST(6) |
FLD ST(7) |
D9h C8...CFh |
|
FXCH ST(0) |
FXCH ST(1) |
FXCH ST(2) |
FXCH ST(3) |
FXCH ST(4) |
FXCH ST(5) |
FXCH ST(6) |
FXCH ST(7) |
D9h D0...D7h |
|
FNOP |
|
|
|
|
|
|
? (Cyrix) |
D9h D8...DFh |
|
FSTPNSUE1* ST(0) |
FSTPNSUE1* ST(1) |
FSTPNSUE1* ST(2) |
FSTPNSUE1* ST(3) |
FSTPNSUE1* ST(4) |
FSTPNSUE1* ST(5) |
FSTPNSUE1* ST(6) |
FSTPNSUE1* ST(7) |
D9h E0...E7h |
|
FCHS |
FABS |
? (Cyrix) |
|
FTST |
FXAM |
FTSTP (Cyrix) |
? (Cyrix) |
D9h E8...EFh |
|
FLD1 |
FLDL2T |
FLDL2E |
FLDPI |
FLDLG2 |
FLDLN2 |
FLDZ |
|
D9h F0...F7h |
|
F2XM1 |
FYL2X |
FPTAN |
FPATAN |
FXTRACT |
FPREM1 (80387+) |
FDECSTP |
FINCSTP |
D9h F8...FFh |
|
FPREM |
FYL2XP1 |
FSQRT |
FSINCOS (80387+) |
FRNDINT |
FSCALE |
FSIN (80387+) |
FCOS (80387+) |
DAh 00...3Fh |
|
FIADD short integer |
FIMUL short integer |
FICOM short integer |
FICOMP short integer |
FISUB short integer |
FISUBR short integer |
FIDIV short integer |
FIDIVR short integer |
DAh 40...7Fh |
|
FIADD short integer |
FIMUL short integer |
FICOM short integer |
FICOMP short integer |
FISUB short integer |
FISUBR short integer |
FIDIV short integer |
FIDIVR short integer |
DAh 80...BFh |
|
FIADD short integer |
FIMUL short integer |
FICOM short integer |
FICOMP short integer |
FISUB short integer |
FISUBR short integer |
FIDIV short integer |
FIDIVR short integer |
|
DAh C0...C7h |
|
FCMOVB ST,ST(0) (see CPUID) |
FCMOVB ST,ST(1) (see CPUID) |
FCMOVB ST,ST(2) (see CPUID) |
FCMOVB ST,ST(3) (see CPUID) |
FCMOVB ST,ST(4) (see CPUID) |
FCMOVB ST,ST(5) (see CPUID) |
FCMOVB ST,ST(6) (see CPUID) |
FCMOVB ST,ST(7) (see CPUID) |
DAh C8...CFh |
|
FCMOVE ST,ST(0) (see CPUID) |
FCMOVE ST,ST(1) (see CPUID) |
FCMOVE ST,ST(2) (see CPUID) |
FCMOVE ST,ST(3) (see CPUID) |
FCMOVE ST,ST(4) (see CPUID) |
FCMOVE ST,ST(5) (see CPUID) |
FCMOVE ST,ST(6) (see CPUID) |
FCMOVE ST,ST(7) (see CPUID) |
DAh D0...D7h |
|
FCMOVBE ST,ST(0) (see CPUID) |
FCMOVBE ST,ST(1) (see CPUID) |
FCMOVBE ST,ST(2) (see CPUID) |
FCMOVBE ST,ST(3) (see CPUID) |
FCMOVBE ST,ST(4) (see CPUID) |
FCMOVBE ST,ST(5) (see CPUID) |
FCMOVBE ST,ST(6) (see CPUID) |
FCMOVBE ST,ST(7) (see CPUID) |
DAh D8...DFh |
|
FCMOVU ST,ST(0) (see CPUID) |
FCMOVU ST,ST(1) (see CPUID) |
FCMOVU ST,ST(2) (see CPUID) |
FCMOVU ST,ST(3) (see CPUID) |
FCMOVU ST,ST(4) (see CPUID) |
FCMOVU ST,ST(5) (see CPUID) |
FCMOVU ST,ST(6) (see CPUID) |
FCMOVU ST,ST(7) (see CPUID) |
DAh E0...E7h |
|
|
|
|
|
|
|
|
|
DAh E8...EFh |
|
|
FUCOMPP (80387+) |
|
|
|
|
|
|
DAh F0...F7h |
|
|
|
|
|
|
|
|
|
DAh F8...FFh |
|
|
|
|
|
|
|
|
|
DBh 00...3Fh |
|
FILD short integer |
FISTTP short integer (see CPUID) |
FIST short integer |
FISTP short integer |
|
FLD extended real |
|
FSTP extended real |
DBh 40...7Fh |
|
FILD short integer |
FISTTP short integer (see CPUID) |
FIST short integer |
FISTP short integer |
|
FLD extended real |
|
FSTP extended real |
DBh 80...BFh |
|
FILD short integer |
FISTTP short integer (see CPUID) |
FIST short integer |
FISTP short integer |
|
FLD extended real |
|
FSTP extended real |
|
DBh C0...C7h |
|
FCMOVNB ST,ST(0) (see CPUID) |
FCMOVNB ST,ST(1) (see CPUID) |
FCMOVNB ST,ST(2) (see CPUID) |
FCMOVNB ST,ST(3) (see CPUID) |
FCMOVNB ST,ST(4) (see CPUID) |
FCMOVNB ST,ST(5) (see CPUID) |
FCMOVNB ST,ST(6) (see CPUID) |
FCMOVNB ST,ST(7) (see CPUID) |
DBh C8...CFh |
|
FCMOVNE ST,ST(0) (see CPUID) |
FCMOVNE ST,ST(1) (see CPUID) |
FCMOVNE ST,ST(2) (see CPUID) |
FCMOVNE ST,ST(3) (see CPUID) |
FCMOVNE ST,ST(4) (see CPUID) |
FCMOVNE ST,ST(5) (see CPUID) |
FCMOVNE ST,ST(6) (see CPUID) |
FCMOVNE ST,ST(7) (see CPUID) |
DBh D0...D7h |
|
FCMOVNBE ST,ST(0) (see CPUID) |
FCMOVNBE ST,ST(1) (see CPUID) |
FCMOVNBE ST,ST(2) (see CPUID) |
FCMOVNBE ST,ST(3) (see CPUID) |
FCMOVNBE ST,ST(4) (see CPUID) |
FCMOVNBE ST,ST(5) (see CPUID) |
FCMOVNBE ST,ST(6) (see CPUID) |
FCMOVNBE ST,ST(7) (see CPUID) |
DBh D8...DFh |
|
FCMOVNU ST,ST(0) (see CPUID) |
FCMOVNU ST,ST(1) (see CPUID) |
FCMOVNU ST,ST(2) (see CPUID) |
FCMOVNU ST,ST(3) (see CPUID) |
FCMOVNU ST,ST(4) (see CPUID) |
FCMOVNU ST,ST(5) (see CPUID) |
FCMOVNU ST,ST(6) (see CPUID) |
FCMOVNU ST,ST(7) (see CPUID) |
DBh E0...E7h |
|
FNENI (8087) |
FNDISI (8087) |
FNCLEX |
FNINIT |
FNSETPM (80287) |
FRSTPM (80287XL) |
|
|
DBh E8...EFh |
|
FUCOMI ST,ST(0) (see CPUID) |
FUCOMI ST,ST(1) (see CPUID) |
FUCOMI ST,ST(2) (see CPUID) |
FUCOMI ST,ST(3) (see CPUID) |
FUCOMI ST,ST(4) (see CPUID) |
FUCOMI ST,ST(5) (see CPUID) |
FUCOMI ST,ST(6) (see CPUID) |
FUCOMI ST,ST(7) (see CPUID) |
|
FSBP0 (IIT) |
FSBP3 (IIT) |
FSBP2 (IIT) |
FSBP1 (IIT) |
|
|
|
|
DBh F0...F7h |
|
FCOMI ST,ST(0) (see CPUID) |
FCOMI ST,ST(1) (see CPUID) |
FCOMI ST,ST(2) (see CPUID) |
FCOMI ST,ST(3) (see CPUID) |
FCOMI ST,ST(4) (see CPUID) |
FCOMI ST,ST(5) (see CPUID) |
FCOMI ST,ST(6) (see CPUID) |
FCOMI ST,ST(7) (see CPUID) |
|
|
F4X4 (IIT) |
|
|
|
|
|
|
DBh F8...FFh |
|
|
|
|
|
(DBh FCh) FRINT2 (Cyrix) |
|
|
|
DCh 00...3Fh |
|
FADD double real |
FMUL double real |
FCOM double real |
FCOMP double real |
FSUB double real |
FSUBR double real |
FDIV double real |
FDIVR double real |
DCh 40...7Fh |
|
FADD double real |
FMUL double real |
FCOM double real |
FCOMP double real |
FSUB double real |
FSUBR double real |
FDIV double real |
FDIVR double real |
DCh 80...BFh |
|
FADD double real |
FMUL double real |
FCOM double real |
FCOMP double real |
FSUB double real |
FSUBR double real |
FDIV double real |
FDIVR double real |
|
DCh C0...FFh |
|
FADD ST(i),ST |
FMUL ST(i),ST |
FCOM2* ST(i) |
FCOMP3* ST(i) |
FSUBR ST(i),ST |
FSUB ST(i),ST |
FDIVR ST(i),ST |
FDIV ST(i),ST |
DDh 00...3Fh |
|
FLD double real |
FISTTP long integer (see CPUID) |
FST double real |
FSTP double real |
FRSTOR M94/M108 |
|
FNSAVE M94/M108 |
FNSTSW Mw |
DDh 40...7Fh |
|
FLD double real |
FISTTP long integer (see CPUID) |
FST double real |
FSTP double real |
FRSTOR M94/M108 |
|
FNSAVE M94/M108 |
FNSTSW Mw |
DDh 80...BFh |
|
FLD double real |
FISTTP long integer (see CPUID) |
FST double real |
FSTP double real |
FRSTOR M94/M108 |
|
FNSAVE M94/M108 |
FNSTSW Mw |
|
DDh C0...FFh |
|
FFREE ST(i) |
FXCH4* ST(i) |
FST ST(i) |
FSTP ST(i) |
FUCOM ST(i) (80387+) |
FUCOMP ST(i) (80387+) |
|
(DDh FCh) FRICHOP (Cyrix) |
DEh 00...3Fh |
|
FIADD word integer |
FIMUL word integer |
FICOM word integer |
FICOMP word integer |
FISUB word integer |
FISUBR word integer |
FIDIV word integer |
FIDIVR word integer |
DEh 40...7Fh |
|
FIADD word integer |
FIMUL word integer |
FICOM word integer |
FICOMP word integer |
FISUB word integer |
FISUBR word integer |
FIDIV word integer |
FIDIVR word integer |
DEh 80...BFh |
|
FIADD word integer |
FIMUL word integer |
FICOM word integer |
FICOMP word integer |
FISUB word integer |
FISUBR word integer |
FIDIV word integer |
FIDIVR word integer |
|
DEh C0...C7h |
|
FADDP ST(0),ST |
FADDP ST(1),ST |
FADDP ST(2),ST |
FADDP ST(3),ST |
FADDP ST(4),ST |
FADDP ST(5),ST |
FADDP ST(6),ST |
FADDP ST(7),ST |
DEh C8...CFh |
|
FMULP ST(0),ST |
FMULP ST(1),ST |
FMULP ST(2),ST |
FMULP ST(3),ST |
FMULP ST(4),ST |
FMULP ST(5),ST |
FMULP ST(6),ST |
FMULP ST(7),ST |
DEh D0...D7h |
|
FCOMP5* ST(0) |
FCOMP5* ST(1) |
FCOMP5* ST(2) |
FCOMP5* ST(3) |
FCOMP5* ST(4) |
FCOMP5* ST(5) |
FCOMP5* ST(6) |
FCOMP5* ST(7) |
DEh D8...DFh |
|
? (Cyrix) |
FCOMPP |
? (Cyrix) |
|
? (Cyrix) |
? (Cyrix) |
? (Cyrix) |
|
DEh E0...E7h |
|
FSUBRP ST(0),ST |
FSUBRP ST(1),ST |
FSUBRP ST(2),ST |
FSUBRP ST(3),ST |
FSUBRP ST(4),ST |
FSUBRP ST(5),ST |
FSUBRP ST(6),ST |
FSUBRP ST(7),ST |
DEh E8...EFh |
|
FSUBP ST(0),ST |
FSUBP ST(1),ST |
FSUBP ST(2),ST |
FSUBP ST(3),ST |
FSUBP ST(4),ST |
FSUBP ST(5),ST |
FSUBP ST(6),ST |
FSUBP ST(7),ST |
DEh F0...F7h |
|
FDIVRP ST(0),ST |
FDIVRP ST(1),ST |
FDIVRP ST(2),ST |
FDIVRP ST(3),ST |
FDIVRP ST(4),ST |
FDIVRP ST(5),ST |
FDIVRP ST(6),ST |
FDIVRP ST(7),ST |
DEh F8...FFh |
|
FDIVP ST(0),ST |
FDIVP ST(1),ST |
FDIVP ST(2),ST |
FDIVP ST(3),ST |
FDIVP ST(4),ST |
FDIVP ST(5),ST |
FDIVP ST(6),ST |
FDIVP ST(7),ST |
DFh 00...3Fh |
|
FILD word integer |
FISTTP word integer (see CPUID) |
FIST word integer |
FISTP word integer |
FBLD packed BCD |
FILD long integer |
FBSTP packed BCD |
FISTP long integer |
DFh 40...7Fh |
|
FILD word integer |
FISTTP word integer (see CPUID) |
FIST word integer |
FISTP word integer |
FBLD packed BCD |
FILD long integer |
FBSTP packed BCD |
FISTP long integer |
DFh 80...BFh |
|
FILD word integer |
FISTTP word integer (see CPUID) |
FIST word integer |
FISTP word integer |
FBLD packed BCD |
FILD long integer |
FBSTP packed BCD |
FISTP long integer |
|
DFh C0...C7h |
|
FFREEP* ST(0) |
FFREEP* ST(1) |
FFREEP* ST(2) |
FFREEP* ST(3) |
FFREEP* ST(4) |
FFREEP* ST(5) |
FFREEP* ST(6) |
FFREEP* ST(7) |
DFh C8...CFh |
|
FXCH7* ST(0) |
FXCH7* ST(1) |
FXCH7* ST(2) |
FXCH7* ST(3) |
FXCH7* ST(4) |
FXCH7* ST(5) |
FXCH7* ST(6) |
FXCH7* ST(7) |
DFh D0...D7h |
|
FSTP8* ST(0) |
FSTP8* ST(1) |
FSTP8* ST(2) |
FSTP8* ST(3) |
FSTP8* ST(4) |
FSTP8* ST(5) |
FSTP8* ST(6) |
FSTP8* ST(7) |
DFh D8...DFh |
|
FSTP9* ST(0) |
FSTP9* ST(1) |
FSTP9* ST(2) |
FSTP9* ST(3) |
FSTP9* ST(4) |
FSTP9* ST(5) |
FSTP9* ST(6) |
FSTP9* ST(7) |
DFh E0...E7h |
|
FNSTSW AX (80287+) |
FSTDW AX (80387SL) |
FSTSG AX (80387SL) |
|
|
|
|
|
DFh E8...EFh |
|
FUCOMIP ST,ST(0) (see CPUID) |
FUCOMIP ST,ST(1) (see CPUID) |
FUCOMIP ST,ST(2) (see CPUID) |
FUCOMIP ST,ST(3) (see CPUID) |
FUCOMIP ST,ST(4) (see CPUID) |
FUCOMIP ST,ST(5) (see CPUID) |
FUCOMIP ST,ST(6) (see CPUID) |
FUCOMIP ST,ST(7) (see CPUID) |
DFh F0...F7h |
|
FCOMIP ST,ST(0) (see CPUID) |
FCOMIP ST,ST(1) (see CPUID) |
FCOMIP ST,ST(2) (see CPUID) |
FCOMIP ST,ST(3) (see CPUID) |
FCOMIP ST,ST(4) (see CPUID) |
FCOMIP ST,ST(5) (see CPUID) |
FCOMIP ST,ST(6) (see CPUID) |
FCOMIP ST,ST(7) (see CPUID) |
DFh F8...FFh |
|
|
|
|
|
(DFh FCh) FRINEAR (Cyrix) |
|
|
|
note: The opcodes marked with * are aliases to other opcodes, except FSTPNoStackUnderflowException1* and FFREEPop.
© 1996-2024 by Christian Ludloff. All rights reserved. Use at your own risk.
|