【汇编】JCC

概述: JCC 汇编指令

0x01 指令全英

指令 FALG
A above ZF=0 OR CF=0
B blow CF=1
E equal ZF=1
N not
C carry CF=1
G great SF==OF && ZF=0
L less SF!=OF
O overflow OF=1
P parity even 奇偶 PF=1
S sign为负 SF=1
Z zero为0 ZF=1

0x02 基于特定标志位值的跳转

指令 说明
JC 进位跳转(进位标志位置 1)
JNC 无进位跳转(进位标志位清零)
JZ/JE 结果为零则跳转(相等时跳转)
JNZ 结果不为零则跳转(不相等时跳转)
JS 结果为负则跳转
JNS 结果为非负则跳转
JP 结果中1的个数为偶数则跳转
JNP 结果中1的个数为奇数则跳转
JO 结果溢出了则跳转
JNO 结果没有溢出则跳转

0x03 JCC满足条件时跳转

操作码 指令 说明
77 cb JA rel8 高于(CF=0 且 ZF=0)时短跳转
73 cb JAE rel8 高于或等于 (CF=0) 时短跳转
72 cb JB rel8 低于 (CF=1) 时短跳转
76 cb JBE rel8 低于或等于(CF=1 或 ZF=1)时短跳转
72 cb JC rel8 进位 (CF=1) 时短跳转
E3 cb JCXZ rel8 CX 寄存器为 0 时短跳转
E3 cb JECXZ rel8 ECX 寄存器为 0 时短跳转
74 cb JE rel8 等于 (ZF=1) 时短跳转
7F cb JG rel8 大于(ZF=0 且 SF=OF)时短跳转
7D cb JGE rel8 大于或等于 (SF=OF) 时短跳转
7C cb JL rel8 小于 (SF<>OF) 时短跳转
7E cb JLE rel8 小于或等于(ZF=1 或 SF<>OF)时短跳转
76 cb JNA rel8 不高于(CF=1 或 ZF=1)时短跳转
72 cb JNAE rel8 不高于或等于 (CF=1) 时短跳转
73 cb JNB rel8 不低于 (CF=0) 时短跳转
77 cb JNBE rel8 不低于或等于(CF=0 或 ZF=0)时短跳转
73 cb JNC rel8 无进位 (CF=0) 时短跳转
75 cb JNE rel8 不相等 (ZF=0) 时短跳转
7E cb JNG rel8 不大于(ZF=1 或 SF<>OF)时短跳转
7C cb JNGE rel8 不大于或等于 (SF<>OF) 时短跳转
7D cb JNL rel8 不小于 (SF=OF) 时短跳转
7F cb JNLE rel8 不小于或等于(ZF=0 且 SF=OF)时短跳转
71 cb JNO rel8 不上溢 (OF=0) 时短跳转
7B cb JNP rel8 奇校验 (PF=0) 时短跳转
79 cb JNS rel8 正数时 (SF=0) 短跳转
75 cb JNZ rel8 不为零 (ZF=0) 时短跳转
70 cb JO rel8 上溢 (OF=1) 时短跳转
7A cb JP rel8 偶校验 (PF=1) 时短跳转
7A cb JPE rel8 偶校验 (PF=1) 时短跳转
7B cb JPO rel8 奇校验 (PF=0) 时短跳转
78 cb JS rel8 负数 (SF=1) 时短跳转
74 cb JZ rel8 为零 (ZF=1) 时短跳转
0F 87 cw/cd JA rel16/32 高于(CF=0 且 ZF=0)时近跳转
0F 83 cw/cd JAE rel16/32 高于或等于 (CF=0) 时近跳转
0F 82 cw/cd JB rel16/32 低于 (CF=1) 时近跳转
0F 86 cw/cd JBE rel16/32 低于或等于(CF=1 或 ZF=1)时近跳转
0F 82 cw/cd JC rel16/32 进位 (CF=1) 时近跳转
0F 84 cw/cd JE rel16/32 相等 (ZF=1) 时近跳转
0F 84 cw/cd JZ rel16/32 为 0 (ZF=1) 时近跳转
0F 8F cw/cd JG rel16/32 大于(ZF=0 且 SF=OF)时近跳转
操作码 指令 说明
0F 8D cw/cd JGE rel16/32 大于或等于 (SF=OF) 时近跳转
0F 8C cw/cd JL rel16/32 小于 (SF<>OF) 时近跳转
0F 8E cw/cd JLE rel16/32 小于或等于(ZF=1 或 SF<>OF)时近跳转
0F 86 cw/cd JNA rel16/32 不高于(CF=1 或 ZF=1)时近跳转
0F 82 cw/cd JNAE rel16/32 不高于或等于 (CF=1) 时近跳转
0F 83 cw/cd JNB rel16/32 不低于 (CF=0) 时近跳转
0F 87 cw/cd JNBE rel16/32 不低于或等于(CF=0 或 ZF=0)时近跳转
0F 83 cw/cd JNC rel16/32 无进位 (CF=0) 时近跳转
0F 85 cw/cd JNE rel16/32 不相等 (ZF=0) 时近跳转
0F 8E cw/cd JNG rel16/32 不大于(ZF=1 或 SF<>OF)时近跳转
0F 8C cw/cd JNGE rel16/32 不大于或等于 (SF<>OF) 时近跳转
0F 8D cw/cd JNL rel16/32 不小于 (SF=OF) 时近跳转
0F 8F cw/cd JNLE rel16/32 不小于或等于(ZF=0 且 SF=OF)时近跳转
0F 81 cw/cd JNO rel16/32 不上溢 (OF=0) 时近跳转
0F 8B cw/cd JNP rel16/32 奇校验 (PF=0) 时近跳转
0F 89 cw/cd JNS rel16/32 正数 (SF=0) 时近跳转
0F 85 cw/cd JNZ rel16/32 不为零 (ZF=0) 时近跳转
0F 80 cw/cd JO rel16/32 上溢 (OF=1) 时近跳转
0F 8A cw/cd JP rel16/32 偶校验 (PF=1) 时近跳转
0F 8A cw/cd JPE rel16/32 偶校验 (PF=1) 时近跳转
0F 8B cw/cd JPO rel16/32 奇校验 (PF=0) 时近跳转
0F 88 cw/cd JS rel16/32 负数 (SF=1) 时近跳转
0F 84 cw/cd JZ rel16/32 为 0 (ZF=1) 时近跳转

【汇编】JCC
https://hodlyounger.github.io/B_Code/汇编/【汇编】JCC/
作者
mingming
发布于
2023年11月20日
许可协议