M80C287
Table 2. Condition Code Interpretation
Instruction C0 (S) C3 (Z) C1 (A) C2 (C)
FPREM, FPREM1 Three Least Significant Bits
Reduction
(See Table 3) of Quotient
0
e
Complete
Q2 Q0 Q1
1
e
Incomplete
or O/U
FCOM, FCOMP,
FCOMPP, FTST,
Result of Comparison Zero Operand is Not Comparable
FUCOM, FUCOMP,
(See Table 2.4) or O/U
(Table 2.4)
FUCOMPP, FICOM,
FICOMP
FXAM Operand Class Sign Operand Class
(See Table 2.5) or O/U
(Table 2.5)
FCHS, FABS, FXCH,
FINCTOP, FDECTOP,
Constant Loads,
UNDEFINED
Zero
UNDEFINED
FXTRACT, FLD, or O/U
FILD, FBLD,
FSTP (Ext Real)
FIST, FBSTP,
FRNDINT, FST
FSTP, FADD, FMUL,
FDIV, FDIVR,
UNDEFINED
Roundup
UNDEFINED
FSUB, FSUBR, or O/U
FSCALE, FSQRT,
FPATAN, F2XM1,
FYL2X, FYL2XP1
FPTAN, FSIN, Roundup
Reduction
FCOS, FSINCOS
UNDEFINED
or O/U
0eComplete
Undefined
1
e
Incomplete
if C2e1
FLDENV, FRSTOR Each Bit Loaded from Memory
FLDCW, FSTENV,
FSTCW, FSTSW,
UNDEFINED
FCLEX, FINIT,
FSAVE
O/U When both IE and SF bits of status word are set, indicating a stack exception, this bit distinguishes between
stack overflow (C1
e
1) and underflow (C1e0).
Reduction If FPREM or FPREM1 produces a remainder that is less than the modulus, reduction is complete. When
reduction is incomplete the value at the top of the stack is a partial remainder, which can be used as input to
further reduction. For FPTAN, FSIN, FCOS, and FSINCOS, the reduction bit is set if the operand at the top of
the stack is too large. In this case the original operand remains at the top of the stack.
Roundup When the PE bit of the status word is set, this bit indicates whether one was added to the least significant bit of
the result during the last rounding.
UNDEFINED Do not rely on finding any specific value in these bits.
6