首页
社区
课程
招聘
[求助]imul指令会使 edx 和 eax 组合成一个64位的寄存器吗?··
发表于: 2012-1-27 22:40 12927

[求助]imul指令会使 edx 和 eax 组合成一个64位的寄存器吗?··

2012-1-27 22:40
12927
看了67页的如下代码:

mov eax,38E38E39h
imul ecx
sar edx,1


请问sar的时候使用的是edx寄存器,那么eax是否也做相应的改变啊?

因为我考虑是 38E38E39 * 9 > 2^32 一个寄存器无法装下,必定使用edx和eax。
而假如只右移edx,那就出错了.....

还请帮忙解释下,谢谢...

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 29
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
知道的麻烦帮个忙回答下,不知道的麻烦顶个贴证明兄台曾来过啊~
2012-2-5 23:36
0
雪    币: 110
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
看公式推导吧
2012-2-21 19:14
0
雪    币: 100
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
除法 看推倒公式去!
2012-2-21 19:26
0
雪    币: 12
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
哥们,我在你的那个引用和指针的帖子的留言你看没有,弄懂了没有,没有弄明白又弄这个了?
2012-2-22 11:41
0
雪    币: 371
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hyp
6
这里imul的结果是EDX:EAX
因为需要右移33位
右移32位相当于EAX弃用,所以只需要EDX右移一位就好了
接下去这句mov eax,edx也能证明.
书上说的其实挺清楚的,LZ可以仔细看看
2012-2-22 17:28
0
雪    币: 88
活跃值: (335)
能力值: ( LV4,RANK:55 )
在线值:
发帖
回帖
粉丝
7
楼上正解。其实我在看的时候尝试着自己分析了下,结果看的一头雾水,然后看了下作者分析很详细清楚,一下子就看懂,还是老老实实的跟着书看吧
2013-1-4 04:36
0
游客
登录 | 注册 方可回帖
返回
//