FDIVR           Divide real reversed                 Exceptions: I D Z O U P
FDIVRP Divide real reversed and pop C3 C2 C1 C0: ? ? * ?

FDIVR [[destination,] source]
FDIVRP [destination, ST]

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