一、指令格式

条件转移指令 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 下调试

016--JLE JNG(小于等于)-LMLPHP

SF=1,ZF=1,OF=1 //其中一个或者多个为1 则跳转

05-06 10:35