首页
社区
课程
招聘
[讨论]关于push的问题
发表于: 2012-8-30 17:46 3682

[讨论]关于push的问题

2012-8-30 17:46
3682
假设此时堆栈是空  在32位的windows系统下
push 99887766h
pop   eax
此时明显
eax是99887766h

如果我们push 199887766h
               pop   eax
那么此时eax是什么呢

我们将199887766h
换算成2进制
1  10011001  10001000   01110111  01100110
我们都知道32位二进制的数最大也就是
11111111111111111111111111111111
换算成16进制也就是FFFF FFFFh
我们将 199887766h换算成2进制push进栈
然后pop eax 此时eax结果是什么 谁能给分析下

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

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 468
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
push 199887766h
经过汇编以后会是一个机器码,应该是汇编程序对199887766h进行处理以后形成一个32位值,或者报错,至于具体是什么规则生成32位值,我也不知道。也许报错吧。
2012-8-30 18:00
0
雪    币: 55
活跃值: (929)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
应该还是99887766h吧
2012-8-30 18:21
0
雪    币: 508
活跃值: (202)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
4
从OD看来不管乍
PUAH  都只能如图结果

上传的附件:
2012-8-30 19:27
0
雪    币: 2993
活跃值: (25)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
masm报错
2012-8-30 19:44
0
游客
登录 | 注册 方可回帖
返回
//