Logic ; FDIVR source ; FDIVR and FDIVRP ST ← source / ST ST(1) ← ST / ST(1) pop ST
; FDIVR dest, source ; FDIVRP dest, ST ST(dest) ← ST(src) / ST(dest) ST(dest) ← ST / ST(dest) pop ST
FDIVR/FDIVRP divide the source operand by the destination operand and return the quotient to the destination operand.
The one-operand form of FDIVR divides a (single or double real) memory operand by ST and leaves the result in ST. The two-operand form of FDIVR divides two register operands (one of these must be ST) and stores the result in the destination register. FDIVRP works like the two-operand FDIVR but requires ST to be the source operand; it also pops the stack. The no-operand forms FDIVR and FDIVRP equal 'FDIVRP ST(1), ST'.
Opcode Format D8 /7 FDIVR m32 DC /7 FDIVR m64 D8 F8 + i FDIVR ST,ST(i) DC F0 + i FDIVR ST(i),ST DE F0 + i FDIVRP ST(i),ST DE F1 FDIVR DE F1 FDIVRP
Timing Variations/ operand 8087 287 387 486 Pentium fdivr reg 194-204 194-204 88-91 73 39 FX fdivr m32 (216-226)+EA 216-226 89 73 39 FX fdivr m64 (221-231)+EA 221-231 94 73 39 FX fdivrp 198-208 198-208 91 73 39 FX