标题:rep movs汇编指令的问题
取消只看楼主
sharplong
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:122
专家分:121
注 册:2017-3-27
结帖率:85.71%
已结贴  问题点数:20 回复次数:2 
rep movs汇编指令的问题
以下是vc6的disassembley 的一段代码,结构体的赋值操作。
22:       student = student1;
0040DE74   mov         ecx,8
0040DE79   lea         esi,[ebp-48h]
0040DE7C   lea         edi,[ebp-28h]
0040DE7F   rep movs    dword ptr [edi],dword ptr [esi]
我知道lea 是取地址,rep是重复,ecx,8是重复执行的次数。 movs是把esi指向的内存复制到edi指向的内存。
我这里猜想edi跟esi每次执行过后是会加4的。然后这段代码的功能是一段数据的复制。

------------------------------------------------------------------------------
不知猜想是否正确,edi esi真的加4吗,在哪里可以找到权威的集参考????比如movs , rep,esi edi这些  。
网上找的资料比较乱,我是初学者,求高手指点和给个权威参考书或网址。
搜索更多相关主题的帖子: 汇编 指令 执行 指向 内存 
2017-09-17 03:42
sharplong
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:122
专家分:121
注 册:2017-3-27
得分:0 
回复 2楼 Valenciax
嗯明白了,那么
改写成如下两种形式也是对的吗?
    rep movsd ptr [edi] ,ptr[esi](这种是不是不对??)
或直接
    rep movsd(会默认使用edi 跟esi吗??)

另外,我还想看一下其他指令的权威参考,版主有没有推荐呢??

[此贴子已经被作者于2017-9-17 23:52编辑过]


跟据科学研究呢,拥有一个良好的头像呢,有助于提高帖子关注度,和被友好对待的可能性:)准确来说呢,其实,我是一个演员....和兼职汽车维修员
2017-09-17 23:51
sharplong
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:122
专家分:121
注 册:2017-3-27
得分:0 
回复 4楼 Valenciax
受教了,十分感谢。

跟据科学研究呢,拥有一个良好的头像呢,有助于提高帖子关注度,和被友好对待的可能性:)准确来说呢,其实,我是一个演员....和兼职汽车维修员
2017-09-18 23:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-480758-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.183517 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved