反汇编 if else_if else_if else

int _tmain(int argc, _TCHAR* argv[])
{
	int a = 1;
	int b = 2;
	int c = 3;
	MessageBox(NULL, L"111", L"2", 0);

 	if (a<b)
	{
		printf("11111111111n");
	}

	else if (b<c)
	{
		printf("22222222");
	}
	else if (a>c)
	{
		printf("33333333");
	}
	else
	{
		printf("44444444");
	}
	getchar();
	return 0;
}


	if (a<b)
00131420  mov         eax,dword ptr [a]  
00131423  cmp         eax,dword ptr [b]  
00131426  jge         wmain+71h (0131441h)  下个分支
	{
		printf("11111111111n");
00131428  mov         esi,esp  
0013142A  push        135864h  
0013142F  call        dword ptr ds:[139110h]  
00131435  add         esp,4  
00131438  cmp         esi,esp  
0013143A  call        __RTC_CheckEsp (0131140h)  跳结束
0013143F  jmp         wmain+0CAh (013149Ah)  
	}

	else if (b<c)
00131441  mov         eax,dword ptr [b]  
00131444  cmp         eax,dword ptr [c]  
00131447  jge         wmain+92h (0131462h)  下个分支
	{
		printf("22222222");
00131449  mov         esi,esp  
0013144B  push        135874h  
00131450  call        dword ptr ds:[139110h]  
00131456  add         esp,4  
00131459  cmp         esi,esp  
0013145B  call        __RTC_CheckEsp (0131140h)  
00131460  jmp         wmain+0CAh (013149Ah)  
	}
	else if (a>c)
00131462  mov         eax,dword ptr [a]  
00131465  cmp         eax,dword ptr [c]  
00131468  jle         wmain+0B3h (0131483h)  下个分支
	{
		printf("33333333");
0013146A  mov         esi,esp  
0013146C  push        135884h  
00131471  call        dword ptr ds:[139110h]  
00131477  add         esp,4  
0013147A  cmp         esi,esp  
0013147C  call        __RTC_CheckEsp (0131140h)  
	}
	else
00131481  jmp         wmain+0CAh (013149Ah)  跳结束
	{
		printf("44444444");
00131483  mov         esi,esp       没有if比较
00131485  push        135890h  
0013148A  call        dword ptr ds:[139110h]  
00131490  add         esp,4  
00131493  cmp         esi,esp  
00131495  call        __RTC_CheckEsp (0131140h)  
	}
	getchar();
0013149A  mov         esi,esp  
0013149C  call        dword ptr ds:[139114h]  
001314A2  cmp         esi,esp  
001314A4  call        __RTC_CheckEsp (0131140h)  

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值