Intel 253666-024US Computer Hardware User Manual


 
3-356 Vol. 2A FPATAN—Partial Arctangent
INSTRUCTION SET REFERENCE, A-M
FPATAN—Partial Arctangent
Description
Computes the arctangent of the source operand in register ST(1) divided by the
source operand in register ST(0), stores the result in ST(1), and pops the FPU
register stack. The result in register ST(0) has the same sign as the source operand
ST(1) and a magnitude less than +π.
The FPATAN instruction returns the angle between the X axis and the line from the
origin to the point (X,Y), where Y (the ordinate) is ST(1) and X (the abscissa) is
ST(0). The angle depends on the sign of X and Y independently, not just on the sign
of the ratio Y/X. This is because a point (X,Y) is in the second quadrant, resulting in
an angle between π/2 and π, while a point (X,Y) is in the fourth quadrant, resulting in
an angle between 0 and π/2. A point (X,Y) is in the third quadrant, giving an angle
between π/2 and π.
The following table shows the results obtained when computing the arctangent of
various classes of numbers, assuming that underflow does not occur.
Opcode* Instruction 64-Bit
Mode
Compat/
Leg Mode
Description
D9 F3 FPATAN Valid Valid Replace ST(1) with arctan(ST(1)/ ST(0)) and pop
the register stack.
NOTES:
* See IA-32 Architecture Compatibility section below.