首页
社区
课程
招聘
[求助]用if判断就崩溃,用汇编正常是什么原因?
发表于: 2010-4-12 07:30 5803

[求助]用if判断就崩溃,用汇编正常是什么原因?

2010-4-12 07:30
5803
正常语句
			_asm
			{
				mov eax,[p1a94]
					cmp eax,0xffff
					je _notf
					mov edi,mybase
					mov eax,[edi]
					push 0
					push 1
					push 0x44D
					mov ecx,edi
					call [eax+4]
_notf:
				
					
			} //end asm


崩溃语句
if (*p1a94==0xffff)
{
	_asm
	{

			
		mov edi,mybase
		mov eax,[edi]
		push 0
		push 1
		push 0x44D
		mov ecx,edi
		mov eax,[eax+4]
		call eax
	} //end asm
} //end if 


我感觉都没有问题啊.有可能是什么问题呢?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 13082
活跃值: (4082)
能力值: ( LV15,RANK:1673 )
在线值:
发帖
回帖
粉丝
2
不知道你的 pla94 是不是这样定义的:
DWORD * & pla94;
2010-4-12 07:54
0
雪    币: 419
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
*p1a94!=0xffff

??
2010-4-12 07:55
0
雪    币: 1556
活跃值: (310)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
4
单步 看到哪一步崩溃
2010-4-12 08:49
0
雪    币: 335
活跃值: (55)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
楼主很粗心啊
2010-4-12 10:48
0
雪    币: 724
活跃值: (81)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
mov eax,[p1a94] 等效于eax=pla04,而不是eax=*pla04;
2010-4-12 11:41
0
雪    币: 6335
活跃值: (3776)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
7
[QUOTE=半道出家;789785]mov eax,[p1a94] 等效于eax=pla04,而不是eax=*pla04;[/QUOTE]

确实啊.是写错了.可是用
mov eax,[*p1a94]
编译无法通过?
syntax error in 'second operand'; found '*'
想比较0xffff和p1a94地址的内容.
2010-4-16 20:06
0
雪    币: 724
活跃值: (81)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
[QUOTE=whale;792138]确实啊.是写错了.可是用
mov eax,[*p1a94]
编译无法通过?
syntax error in 'second operand'; found '*'
想比较0xffff和p1a94地址的内容.[/QUOTE]
mov eax,p1a94  ;
mov eax,[eax]
2010-4-16 20:13
0
游客
登录 | 注册 方可回帖
返回
//