首页
社区
课程
招聘
exe反汇编出现:lea esp,dword ptr ss:[esp]
发表于: 2005-8-7 23:13 9944

exe反汇编出现:lea esp,dword ptr ss:[esp]

2005-8-7 23:13
9944
用od对exe反汇编后出现了多处“lea esp,dword ptr ss:[esp]”这样的指令,看上去就是一句废话,但为什么编译器会编译出这样的指令来呢?(原代码是用vc++编译的)是不是编译器还不够智能?请前辈指点,谢谢先!!!

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 622
活跃值: (294)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
2
不是把,这个语句是把esp所指的内存中的内容付给esp。不是把esp的值在付给esp。
2005-8-8 00:09
0
雪    币: 217
活跃值: (99)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
确实是废话,但像这样的单指令废话太多了:
lea r32,[r32]
xchg r32,r32
mov r32,r32
ror r32,0
rol r32,0
shr r32,0
shl r32,0
......
2005-8-8 00:20
0
雪    币: 217
活跃值: (99)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
首先是否使用VC6.0以上版本(最好是7.1),再确定工程是否设置了最大优化.编译器有时确实生成了一些明显的垃圾代码,而且很少见的,但单指令垃圾代码我却没见过。
2005-8-8 00:24
0
雪    币: 200
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
是作者用来扰乱还是编译器比较笨?
2005-8-8 09:41
0
雪    币: 339
活跃值: (1510)
能力值: ( LV13,RANK:970 )
在线值:
发帖
回帖
粉丝
6
大部分是编译器问题
2005-8-8 10:40
0
雪    币: 225
活跃值: (40)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
7
的确是垃圾指令....迷惑作用??
2005-8-8 17:52
0
游客
登录 | 注册 方可回帖
返回
//