鱼C论坛

 找回密码
 立即注册
查看: 2169|回复: 6

请大神给解释下3局汇编代码的含义

[复制链接]
发表于 2012-9-29 22:20:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
MOV EAX,DWORD PTR DS:[63330D]   // 这里我懂 是取 63330D 这个内存地址的值 放到 EAX 这寄存器里
MOV EAX,DWORD PTR DS:[EAX+70]   //这里不太懂 []里的 EAX 是 上句EAX 的值吗?还是63330D 这个地址?
MOV EAX,DWORD PTR DS:[EAX+1DC] //如果 []里的 EAX 是值的话 最后的 EAX 不就是 63330D+70+1DC 这个值吗
为啥还要赋值3次。

刚开始学习汇编 晕头转向的!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-9-30 00:02:42 | 显示全部楼层
很不错的学习方法  遇到困难会接请教!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-9-30 09:47:58 | 显示全部楼层
你给人家解释下哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-9-30 10:30:44 | 显示全部楼层
eax只有一个 如果被改变的话就是被改变的值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-9-30 10:58:38 | 显示全部楼层
当然不是了。[63330D]和63330D是不一样的,具体是什么值要看内存单元中的数据。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-9-30 14:47:30 | 显示全部楼层
谢谢5楼了 这里我好像已经懂了
MOV EAX,DWORD PTR DS:[63330D] //这里是去 63330D这个地址的内容
MOV EAX,DWORD PTR DS:[EAX+70]/  这里是取 (63330D这个地址的内容+70 ) 这个内存地址的内容

要是 这样 也合法的话
MOV EAX,EAX+70
和上面 是不一样的 EAX+70 是内存地址 ,但没有[  ]的话 不会寻址 最后EAX 是一个内存的地址,而不是内存地址的 值

这样理解 不知道 对不对 ?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-9-30 21:35:24 | 显示全部楼层
楼主 请看  :1、 MOV EAX,DWORD PTR DS:[63330D]   这里是把  63330D这个地址里的内容送EAX   设内容为n (n只是方便下面我给楼主解释,没啥意思)
2、  指令 MOV EAX,DWORD PTR DS:[EAX+70] 相当于MOV EAX,DWORD PTR DS:[n+70]   (这里就是把n+70  这个地址处的内容送  EAX )   设内容为m (m只是方便下面我给楼主解释,没啥意思)
3、指令 MOV EAX,DWORD PTR DS:[EAX+1DC]  这句的意思是  相当于 MOV EAX,DWORD PTR DS:[m+1DC]   也就是把m+1DC 处的内容送EAX  
希望楼主能明白{:1_1:}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-28 01:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表