JXX - Jump Instructions Table
Mnemonic | Sens | Condition de Saut |
---|---|---|
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 |
JC | Jump if Carry | CF=1 |
JCXZ | Jump if CX Zero | CX=0 |
JE | Jump if Equal | ZF=1 |
JG | Jump if Greater (signé) | ZF=0 and SF=OF |
JGE | Jump if Greater or Equal (signé) | SF=OF |
JL | Jump if Less (signé) | SF != OF |
JLE | Jump if Less or Equal (signé) | ZF=1 or SF != OF |
JMP | Unconditional Jump | unconditional |
JNA | Jump if Not Above | CF=1 or ZF=1 |
JNAE | Jump if Not Above or Equal | CF=1 |
JNB | Jump if Not Below | CF=0 |
JNBE | Jump if Not Below or Equal | CF=0 and ZF=0 |
JNC | Jump if Not Carry | CF=0 |
JNE | Jump if Not Equal | ZF=0 |
JNG | Jump if Not Greater (signé) | ZF=1 or SF != OF |
JNGE | Jump if Not Greater or Equal (signé) | SF != OF |
JNL | Jump if Not Less (signé) | SF=OF |
JNLE | Jump if Not Less or Equal (signé) | ZF=0 and SF=OF |
JNO | Jump if Not Overflow (signé) | OF=0 |
JNP | Jump if No Parity | PF=0 |
JNS | Jump if Not Signed (signé) | SF=0 |
JNZ | Jump if Not Zero | ZF=0 |
JO | Jump if Overflow (signé) | OF=1 |
JP | Jump if Parity | PF=1 |
JPE | Jump if Parity Even | PF=1 |
JPO | Jump if Parity Odd | PF=0 |
JS | Jump if Signed (signé) | SF=1 |
JZ | Jump if Zero | ZF=1 |
Horloges | ||||
---|---|---|---|---|
opérandes | 286 | 386 | 486 | Taille en Bytes |
Jx: Saut | 7+m | 7+m | 3 | 2 |
pas de saut | 3 | 3 | 1 | 2 |
Jx: label-proche | 7+m | 3 | 4 | |
pas de saut | 3 | 1 | 4 | |
JCXZ/JECXZ - Jump if Register (E)CX is Zero
Usage: JCXZ label
JECXZ label (386+)
Modifie les Flags suivants: Aucun(e)
Provoque le branchement vers label si le registre CX est égal à zéro. Utilise une comparaison non signée.
Horloges | ||||
---|---|---|---|---|
opérandes | 286 | 386 | 486 | Taille en Bytes |
label: saut | 8+m | 9+m | 8 | 2 |
pas de saut | 4 | 5 | 5 | 2 |
JMP - Unconditional Jump
Usage: JMP target
Modifie les Flags suivants: Aucun(e)
Tranfère froidement :p))) vers label. Les sauts sont compris entre -32768 et 32767 bytes de l'instruction suivant le JUMP. Les sauts NEAR (proche) et SHORT (court) provoque une mise à jour de l'IP tandis que les sauts FAR (lointain) provoque eux la mise à jour de CS:IP.
Horloges | |||
---|---|---|---|
opérandes | 286 | 386 | 486 |
rel8 (relatif) | 7+m | 7+m | 3 |
rel16 (relatif) | 7+m | 7+m | 3 |
rel32 (relatif) | 7+m | 3 | |
reg16 (near, register indirect) | 7+m | 7+m | 5 |
reg32 (near, register indirect) | 7+m | 5 | |
mem16 (near, mem indirect) | 11+m | 10+m | 5 |
mem32 (near, mem indirect) | 15+m | 10+m | 5 |
ptr16:16 (far, dword immed) | 12+m | 17 | |
ptr16:16 (far, PM dword immed) | 27+m | 19 | |
ptr16:16 (call gate, même priv.) | 38+m | 45+m | 32 |
ptr16:16 (via TSS) | 175+m | TS | 42+TS |
ptr16:16 (via task gate) | 180+m | TS | 43+TS |
mem16:16 (far, indirect) | 43+m | 13 | |
mem16:16 (far, PM indirect) | 31+m | 18 | |
mem16:16 (call gate, same priv.) | 41+m | 49+m | 31 |
mem16:16 (via TSS) | 178+m | 5+TS | 41+TS |
mem16:16 (via task gate) | 183+m | 5+TS | 42+TS |
ptr16:32 (far, 6 byte immed) | 12+m | 13 | |
ptr16:32 (far, PM 6 byte immed) | 27+m | 18 | |
ptr16:32 (call gate, même priv.) | 45+m | 31 | |
ptr16:32 (via TSS) | TS | 42+TS | |
ptr16:32 (via task state) | TS | 43+TS | |
m16:32 (far, address à dword) | 43+m | 13 | |
m16:32 (far, address à dword) | 31+m | 18 | |
m16:32 (call gate, même priv.) | 49+m | 31 | |
m16:32 (via TSS) | 5+TS | 41+TS | |
m16:32 (via task state) | 5+TS | 42+TS |