- JS
格式:
js 地址
當執行到JS指令時,如果標誌位SF=1,則跳轉到指定的地址,如果SF=0,不跳轉
比如:
cmp eax,ecx
js 0040100c
此時eax=0,ecx=1,執行完cmp命令,符號標誌位SF=1,執行到JS時,跳轉到0040100c處執行
- JNS
格式:
jns 地址
當執行到JNS指令時,如果標誌位SF=0,則跳轉到指定的地址,如果SF=1,不跳轉,和JS剛好相反
- JP、JPE
JP和JPE是一個意思,只不過是寫法不同,當執行到JPE(JP)命令時,如果此時標誌位PF=1,則跳轉到指定的地址,如果PF=0,不跳轉
cmp eax,ecx
jpe 0040100c
此時eax=0x20,ecx=0x17,執行完cmp,結果爲0x3,轉換爲二進制爲11,1的個數爲偶數個,所以PF=1,跳轉到0040100c處執行
- JNP、JPO
JNP、JPO也是一個意思,不同寫法而已,當執行到JNP(JPO)命令時,如果此時標誌位PF=0,則跳轉到指定的地址,如果PF=1,不跳轉
cmp eax,ecx
jpe 0040100c
此時eax=0x20,ecx=0x18,執行完cmp,結果爲0x32,轉換爲二進制爲01,1的個數爲奇數個,所以PF=0,跳轉到0040100c處執行