Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- iAPx86 - <b>fptan partial tangent exceptions: i p</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
FPTAN           Partial tangent                      Exceptions: I P
                                                     (operands not checked)
FPTAN                                                C3 C2 C1 C0: ? * * ?

        Logic   ST . tan(ST)
                push 1.0

    FPTAN replaces the contents of ST with tan(ST) and then pushes 1.0
    onto the FPU stack (leaving the tangent in ST(1) and 1.0 in ST).
    ST, expressed in radians, must be an absolute number that is less
    than 2**63 (on the 8087 and 80287, 0 <= ST <= PI/4).

    FPTAN pushes 1.0 onto the FPU stack to maintain compatibility with
    the 8087 and 80287 math coprocessors, simplifying the calculation of
    other trigonometric functions. For example, you can produce the
    cotangent (the reciprocal of the tangent) by executing FPTAN, then
    FDIVR.


    Note
    If the operand is outside the acceptable range, C2 is set and ST
    remains unchanged.
    The 80486 checks for interrupts while executing this instruction. It
    will abort FPTAN to service an interrupt.
    ST(7) must be empty to avoid an invalid-operation exception.


    Opcode      Format
    D9 F2       FPTAN


    Timing
    Operand       8087         287        387      486     Pentium
    -            30-540       30-540    191-497  200-273   17-173  NP
          Additional cycles required if operand > pi/4 (~3.141/4 = ~.785)

See Also: FPATAN FPREM CC

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson