一、指令格式
条件转移指令 JLE/JNG
格式: JLE/JNG 标号地址
功能: 小于等于/不大于 时转到标号地址
JNG 有符号 不大于 则跳转 //Jump if Not Greater
JLE 有符号 小于等于 则跳转 //Jump if Less or Equal
SF=1,ZF=1,OF=1 //其中一个或者多个为1 则跳转
二、代码测试
int _tmain(int argc, _TCHAR* argv[])
{
printf("begin\n");
int a = ;
int b = ;
if (a>b) //JLE/JNG 小于等于/不大于时转移
{
printf("do this");
}
printf("end;\n");
return ;
}
int _tmain(int argc, _TCHAR* argv[])
{
printf("begin\n");
int a=;
int b=;
__asm
{
mov ebx,b
cmp a,ebx
jle end;
}
printf("do this");
end:
printf("end;\n");
return ; }
以上2段代码相等
在OllyDbg 下调试
SF=1,ZF=1,OF=1 //其中一个或者多个为1 则跳转