| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4987 人关注过本帖
标题:小白求助 关于汇编指令 stos的问题
只看楼主 加入收藏
d7se123
Rank: 2
等 级:论坛游民
帖 子:65
专家分:14
注 册:2020-3-13
结帖率:50%
收藏
 问题点数:0 回复次数:1 
小白求助 关于汇编指令 stos的问题
问题描述:
mov al,0xff
mov edi,0x12ffdc
stos byte ptr es:[edi]  //将al 寄存器中的数据拷贝到edi(12ffdc)后   edi的值 会增加或者减少

然后再次执行
mov ax,0xAAAA
stos word ptr es:
图片附件: 游客没有浏览图片的权限,请 登录注册
[edi] //为啥还是往12ffdc中拷贝数据 前面的edi的值不是变化了吗?
搜索更多相关主题的帖子: 数据 汇编 指令 mov 拷贝 
2020-05-18 16:08
Valenciax
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:11
帖 子:340
专家分:2482
注 册:2016-5-15
收藏
得分:0 


12ffdc从何而来,和图中所见数值不同,没法回答你的问题.

倒是图中箭咀所指的EDI,和右边画线的EDI,其间变化是相符的.
看不出EDI的增加,是因为反汇编不到位,下面是正确的反汇编

B0FF              MOV     AL,FF
BFC8FD0703        MOV     EDI,0307FDC8
AA                STOSB   ;EDI +1   
66B8BBBB          MOV     AX,BBBB  ;在32模式下操作16bit暂存器要加66h作前置指令
66AB              STOSW   ;理由同上,66h为前置指令,;EDI + 2   
B878563412        MOV     EAX,12345678
AB                STOSD   ;EDI+4  
B878563412        MOV     EAX,12345678
AB                STOSD      ;EDI+4

EDI一共加了11(0BH)
307FDC8H + 0BH = 307FDD3
2020-05-18 19:29
快速回复:小白求助 关于汇编指令 stos的问题
数据加载中...
 
   



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

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