A.2.2 Condition Codes
The available condition codes are given here, along with their numeric
representations as part of opcodes. Many of these condition codes have
synonyms, so several will be listed at a time.
In the following descriptions, the word "either", when applied to two
possible trigger conditions, is used to mean "either or both". If
"either but not both" is meant, the phrase "exactly one of" is used.
- "O" is 0 (trigger if the overflow flag is set); "NO" is 1.
- "B", "C" and "NAE" are 2 (trigger if the carry flag is set); "AE",
"NB" and "NC" are 3.
- "E" and "Z" are 4 (trigger if the zero flag is set); "NE" and "NZ"
are 5.
- "BE" and "NA" are 6 (trigger if either of the carry or zero flags is
set); "A" and "NBE" are 7.
- "S" is 8 (trigger if the sign flag is set); "NS" is 9.
- "P" and "PE" are 10 (trigger if the parity flag is set); "NP" and
"PO" are 11.
- "L" and "NGE" are 12 (trigger if exactly one of the sign and
overflow flags is set); "GE" and "NL" are 13.
- "LE" and "NG" are 14 (trigger if either the zero flag is set, or
exactly one of the sign and overflow flags is set); "G" and "NLE"
are 15.
Note that in all cases, the sense of a condition code may be reversed by
changing the low bit of the numeric representation.
For details of when an instruction sets each of the status flags, see
the individual instruction, plus the Status Flags reference in section
A.2.4