وو

وحید آنلاین . آرشیو وبلاگ وحیدمی دات آی آر . شرکت بیان. vahidmy.blog.ir

وو

وحید آنلاین . آرشیو وبلاگ وحیدمی دات آی آر . شرکت بیان. vahidmy.blog.ir

FDIVRP

FDIVRP 

Usage:  FDIVRP  dest,src                        Modifies flags: None

Divides the 'dest'  by the 'src' operand and stores the result in the 'dest'. The 'dest'  (dividend) is always in an FPU register; the 'src' operand (divisor) can be a register or a memory location. 'Src' operands in memory can be in single-precision or double-precision floating-point format, word or doubleword integer format.                                                        

Floating-Point Division


FDIV mem32                    ; D8 /6                [8086,FPU]

FDIV mem64                    ; DC /6                [8086,FPU]


FDIV fpureg                   ; D8 F0+r              [8086,FPU]

FDIV ST0,fpureg               ; D8 F0+r              [8086,FPU]


FDIV TO fpureg                ; DC F8+r              [8086,FPU]

FDIV fpureg,ST0               ; DC F8+r              [8086,FPU]


FDIVR mem32                   ; D8 /0                [8086,FPU]

FDIVR mem64                   ; DC /0                [8086,FPU]


FDIVR fpureg                  ; D8 F8+r              [8086,FPU]

FDIVR ST0,fpureg              ; D8 F8+r              [8086,FPU]


FDIVR TO fpureg               ; DC F0+r              [8086,FPU]

FDIVR fpureg,ST0              ; DC F0+r              [8086,FPU]


FDIVP fpureg                  ; DE F8+r              [8086,FPU]

FDIVP fpureg,ST0              ; DE F8+r              [8086,FPU]


FDIVRP fpureg                 ; DE F0+r              [8086,FPU]

FDIVRP fpureg,ST0             ; DE F0+r              [8086,FPU]


FDIV divides ST0 by the given operand and stores the result back in ST0, unless the TO qualifier is given, in which case it divides the given operand by ST0 and stores the result in the operand.


FDIVR does the same thing, but does the division the other way up: so if TO is not given, it divides the given operand by ST0 and stores the result in ST0, whereas if TO is given it divides ST0 by its operand and stores the result in the operand.


FDIVP operates like FDIV TO, but pops the register stack once it has finished.


FDIVRP operates like FDIVR TO, but pops the register stack once it has finished.


The C0, C1, C2, and C3 are undefined.


For FP/Integer divisions, see FIDIV.


FDIVR/FDIVRP/FIDIVR-Reverse Divide

Opcode        Instruction            Description

D8 /7            FDIVR m32fp          Divide m32fp by ST(0) and store result in ST(0)

DC /7           FDIVR m64fp           Divide m64fp by ST(0) and store result in ST(0)

D8 F8 +i       FDIVR ST(0), ST(i)   Divide ST(i) by ST(0) and store result in ST(0)

DC F0 +i       FDIVR ST(i), ST(0)   Divide ST(0) by ST(i) and store result in ST(i)

DE F0 +i       FDIVRP ST(i), ST(0) Divide ST(0) by ST(i), store result in ST(i), and pop the register stack

DE F1          FDIVRP                   Divide ST(0) by ST(1), store result in ST(1), and pop the register stack

DA /7           FIDIVR m32int          Divide m32int by ST(0) and store result in ST(0)

DE /7           FIDIVR m16int          Divide m16int by ST(0) and store result in ST(0)


EXAMPLE:

fdivrp st2 st0