The following diagram shows the location of the various flags in the processor status register.
| NT -- Nested Task flag (286+) | IF -- Interrupt-Enable Flag | AF -- Auxiliary Carry Flag |
| IOPL -- I/O Privilege Level (286+) | TF -- Trap Flag | PF -- Parity Flag |
| OF -- Overflow Flag | SF -- Sign Flag | CF -- Carry Flag |
| DF -- Direction Flag | ZF -- Zero Flag |
The following table lists the most common jump instructions and the tests they perform:
| Instruction | Jump Condition | Test |
|---|---|---|
| JE | Jump if Equal | ZF=1 |
| JNE | Jump if Not Equal | ZF=0 |
| JG | Jump if Greater | (ZF=0) AND (SF=OF) |
| JGE | Jump if Greater or Equal | SF=OF |
| JL | Jump if Less | SF≠OF |
| JLE | Jump if Less or Equal | (ZF=1) OR (SF≠OF) |
The following conditional branches are similar to the above but involve comparisons which treat the operands as unsigned integers:
| Instruction | Jump Condition | Test |
|---|---|---|
| JA | Jump if Above | (CF=0) AND (ZF=0) |
| JAE | Jump if Above or Equal | CF=0 |
| JB | Jump if Below | CF=1 |
| JBE | Jump if Below or Equal | (CF=1) OR (ZF=1) |
Finally, the branches below specifically test flags:
The following table describes the meanings of the four flags used in conditional branching:
| 1 -- result is outside signed-number range |
| 0 -- otherwise |
Carry out of (borrow into) high-order bit.
| 1 -- result is outside unsigned-number range |
| 0 -- otherwise |
High-order bit of result.
| 1 -- negative signed number. |
| 0 -- positive signed number. |
| 1 -- result = 0 |
| 0 -- otherwise |