<<<    Index    >>>
3-243
INSTRUCTION SET REFERENCE
FSINCOSĀ—Sine and Cosine (Continued)
Operation
IF ST(0) 
<
 2
63
THEN
C2 
<
 0;
TEMP 
<
 cosine(ST(0));
ST(0) 
<
 sine(ST(0));
TOP 
<
 TOP 
?
 1;
ST(0) 
<
 TEMP;
ELSE (* source operand out of range *)
C2 
<
 1;
FI:
FPU Flags Affected
C1
Set to 0 if stack underflow occurred; set to 1 of stack overflow occurs.
Indicates rounding direction if the exception (#P) is generated: 0 = not
roundup; 1 = roundup.
C2
Set to 1 if source operand is outside the range 
?
2
63
 to +2
63
; otherwise,
cleared to 0.
C0, C3 
Undefined.
Floating-Point Exceptions
#IS
Stack underflow occurred.
#IA
Source operand is an sNaN value, 
?
, or unsupported format.
#D
Source operand is a denormal value.
#U
Result is too small for destination format.
#P
Value cannot be represented exactly in destination format.
Protected Mode Exceptions
#NM
EM or TS in CR0 is set.
Real-Address Mode Exceptions
#NM
EM or TS in CR0 is set.
Virtual-8086 Mode Exceptions
#NM
EM or TS in CR0 is set.
<<<    Index    >>>