首页
社区
课程
招聘
64位汇编的一个乘法弄不明白?
发表于: 2014-3-3 10:45 4465

64位汇编的一个乘法弄不明白?

2014-3-3 10:45
4465
r14是一个无符号整数。
__text:0000000100000E32                 mov     rax, r14
__text:0000000100000E35                 mov     rdx, 2AAAAAAAAAAAAAABh
__text:0000000100000E3F                 imul    rdx
__text:0000000100000E42                 mov     rax, rdx

按照我的理解是如果r14 = 0xb
那么就是 第四句 (rax) = 0xb*0x2AAAAAAAAAAAAAAB

但这似乎是不正确的。

请同学帮忙指点一二。

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

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 2242
活跃值: (488)
能力值: ( LV9,RANK:200 )
在线值:
发帖
回帖
粉丝
2
老生常谈了,除法优化为乘法的策略,实际上是做除以6的操作(得看接下来的shr)
2014-3-3 13:48
0
雪    币: 112
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
LS说的对,推荐阅读:http://blog.sina.com.cn/s/blog_62d718780100mqmm.html
2014-3-3 13:54
0
游客
登录 | 注册 方可回帖
返回
//