Jump if CF = 0 and ZF = 0
Used after a CMP or SUB instruction, JA transfers control to short- label if the first operand (which should be unsigned) was greater than the second operand (also unsigned). The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JA ABOVE |
Note:JNBE, Jump Not Below or Equal, is the
same instruction as JA.
JA, Jump on Above, should be used when comparing unsigned
numbers.
JG, Jump on Greater, should be used when comparing signed
numbers.
Jump if CF = 0
Used after a CMP or SUB instruction, JAE transfers control to short- label if the first operand (which should be unsigned) was greater than or equal to the second operand (also unsigned). The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JAE ABOVE_EQUAL |
Note: JNB (Jump Not Below) is the same
instruction as JAE.
JAE, Jump on Above or Equal, should be used whencomparing
unsigned numbers.
JGE, Jump on Greater or Equal, should be used when comparing
signed numbers.
Jump if CF = 1
Used after a CMP or SUB instruction, JB transfers control to short- label if the first operand was less than the second.(Both operands are treated as unsigned numbers.)The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JAE BELOW |
Note: JC (Jump if Carry), JB, and JNAE (Jump
if Not Above or Equal), are all synonyms for the same
instruction.
JB, Jump if Below, should be used when comparing unsigned
numbers.
JL, Jump if Less Than, should be used when comparing signed
numbers.
Jump if CF = 1 or ZF = 1
Used after a CMP or SUB instruction, JBE transfers control to short- label if the first operand was less than or equal to the second. (Both operands are treated as unsigned numbers.)The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JBE NOT_ABOVE |
Note: JNA, Jump if Not Above, is the same
instruction as JBE.
JBE, Jump if Below or Equal, should be used when comparing
unsigned numbers.
JLE, Jump if Less Than or Equal, should be used when comparing
signed numbers.
Jump if CF = 1
JC transfers control to short-label if the Carry Flag is set. The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JC CARRY_SET |
Note: JB (Jump if Below), JC, and JNAE (Jump
if Not Above or Equal) are all synonyms for the same instruction.
Use JNC, Jump if No Carry, to jump if the carry flag is clear.
See Also: LOOP, LOOPE, LOOPZ, LOOPNZ, LOOPNE
Jump if CX = 0
JCXZ transfers control to short-label if the CX register is 0. The target of the jump must be within -128 to +127 bytes of the nextinstruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 18 or64 | - | 2 | JCXZ COUNT_DONE |
Note: This instruction is commonly used at the beginning of a loop to bypass the loop if the counter variable (CX) is at 0.
Jump if ZF = 1
Used after a CMP or SUB instruction, JE transfers control to short- label if the first operand is equal to the second operand. The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JE ZERO |
Note: JZ, Jump if Zero, is the same instruction as JE
Jump if ZF = 0 and SF = OF
Used after a CMP or SUB instruction, JG transfers control to short- label if the first operand is greater than the second. (Both operands are treated as signed numbers.)The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JG GREATER |
Note: JNLE, Jump if Not Less or Equal, is the
same instruction as JG.
JA, Jump if Above, should be used when comparing unsigned
numbers.
JG, Jump if Greater, should be used when comparing signed
numbers.
Jump if SF = OF
Used after a CMP or SUB instruction, JGE transfers control to short- label if the first operand is greater than or equal to the second. (Both operands are treated as signed numbers.)The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JGE GREATER_EQUAL |
Note: JNL, Jump if Not Less, is the same
instruction as JGE.
JAE, Jump if Above or Equal, should be used when comparing
unsigned numbers.
JGE, Jump if Greater or Equal, should be used when comparing
signed numbers.
Jump if SF <> OF
Used after a CMP or SUB instruction, JL transfers control to short- label if the first operand is less than the second. (Both operands are treated as signed numbers.)The target of the jump must be within - 128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JL LESS |
Note: JNGE, Jump if Not Greater or Equal, is
the same instruction as JL.
JB, Jump if Below, should be used when comparing unsigned
numbers.
JL, Jump if Less, should be used when comparing signed numbers.
Jump if SF <> OF or ZF = 1
Used after a CMP or SUB instruction, JLE transfers control to short- label if the first operand is less than or equal to the second . (Both operands are treated as signed numbers.)The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JLE NOT_GREATER |
Note: JNG, Jump if Not Greater, is the same
instruction as JLE.
JBE, Jump if Below or Equal, should be used when comparing
unsigned numbers.
JLE, Jump if Less or Equal, should be used when comparing signed
numbers.
See also: CALL, RET, SHORT, NEAR, FAR, PROC, EA
Jump always
JMP always transfer control to the target location. Unlike CALL, JMP does not save IP, because no RETurn is expected. An intrasegment JMP may be made either through memory or through a 16-bit register; an intersegment JMP can be made only through memory.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 15 | - | 2 | JMP ROPE_NEAR |
near-label | 15 | - | 3 | JMP SAME_SEGMENT |
far-label | 15 | - | 5 | JMP FAR_LABEL |
memptr16 | 18+EA | - | 2-4 | JMP SAME_SEG |
regptr16 | 11 | - | 2 | JMP BX |
memptr32 | 24+EA | - | 2-4 | JMP NEXT_SEG |
Note: If the assembler can determine that the
target of an intrasegment jump is within 127 bytes of the current
location, the assembler will automatically generate a short-jump
(two-byte) instruction; otherwise, a 3- byte NEAR JMP is
generated.
You can force the generation of a short jump by explicit use of
the operator "short," as in:
JMP short_near_by
JNA is a synonym for JBE. See the description for JBE.
JNAE is a synonym for JB. See the description for JB.
JNB is a synonym for JAE. See the description for JAE.
JNBE is a synonym for JA. See the description for JA.
See Also: JC
Jump if CF = 0
JNC transfers control to short-label if the Carry Flag is clear. The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JNC CARRY_CLEAR |
Note: Use JC, Jump if Carry, to jump if the carry flag is set.
Jump if ZF = 0
Used after a CMP or SUB instruction, JNE transfers control to short- label if the first operand is not equal to the second. The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JNE NOT_EQUAL |
Note: JNZ, Jump if Not Zero, is the same instruction as JNE.
JNG is a synonym for JLE. See the description for JLE.
JNGE is a synonym for JL. See the description for JL.
JNL is a synonym for JGE. See the description for JGE.
JNLE is a synonym for JG. See the description for JG.
Jump if OF = 0
JNO transfers control to short-label if the Overflow Flag is clear. The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JNO NO_OVERFLOW |
Note: Use JO, Jump if Overflow, to jump if the overflow flag is set.
Jump if PF = 0
JNP transfers control to short-label if the Parity Flag is clear. The target of the jump must be within -128 or +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JNP ODD_PARITY |
Note: JPO, Jump if Parity Odd, is the same
instruction a JNP.
Use JP, Jump on Parity, to jump if the parity flag is set.
See Also: JS
Jump if SF = 0
JNS transfers control to short-label if the Sign Flag is clear. The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JNS AQUARIUS |
Note: Use JS, Jump if Sign, to jump if the sign flag is set.
JNZ is a synonym for JNE. See the description for JNE.
Jump if OF = 1
JO transfers control to short-label if the Overflow Flag is set.The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JO SIGNED_OVERFLOW |
Note: Use JNO, Jump if No Overflow, to jump if the overflow flag is clear.
Jump if PF = 1
JP transfers control to short-label if the Parity Flag is set. The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JP EVEN_PARITY |
Note: JPE, Jump if Parity Even, is the same
instruction as JP.
Use JNP, Jump if No Parity, to jump if the Parity Flag is clear.
JPE is a synonym for JP. See the description for JP.
JPO is a synonym for JNP. See the description for JNP.
See also: JNS
Jump if SF = 1
JS transfers control to short-label if the Sign Flag is set. The target of the jump must be within -128 to +127 bytes of the next instruction.
Operands | Clocks | Transfers | Bytes | Example |
short-label | 16 or 4 | - | 2 | JS NEGATIVE |
Note: Use JNS, Jump if No Sign, to jump if the sign flag is clear.
JZ is a synonym for JE. See the description for JE.
Última actualização: 02 Maio 2005