当前位置: 代码迷 >> 汇编语言 >> 关于stos解决方案
  详细解决方案

关于stos解决方案

热度:3377   发布时间:2013-02-26 00:00:00.0
关于stos
本人新手,为什么stos有2个版本的解释啊?

一个版本是这样的:

格式:stos oprd ,其中oprd 为目的串符号地址
功能:将AL或者AX中的数据存储到DI为 目的串地址指针所寻址的存储器单元中去,指针DI将根据DF的值进行自动调整。
串操作指令,默认使用的段是DS和ES。
stos指令默认的目的段是ES,索引指针是DI。即ES:DI。与之相对的是lods指令,它的默认段寄存器是DS,索引指针是SI。即DS:SI


然后,这篇文章是这样写的:
http://apps.hi.baidu.com/share/detail/34046647
stos((store into String),意思是把eax的内容拷贝到目的地址。
我也是在看C++的反编译,好像和这个文章说的很类似啊

请问下这个是什么情况?

------解决方案--------------------------------------------------------
stos指令的含义是:将寄存器(AX,EAX)里的内容存储(store)到内存单元(地址ES:DI);作为参考,与之反操作的指令是lods,它的含义是将内存单元(地址:DS:SI)中的内容装入(load)到寄存器(AX,EAX)。
C++反汇编的汇编指令也应该是X86基于指令集的(如无特殊说明),所以,意思是一样的。
------解决方案--------------------------------------------------------
stos根据操作单元的大小有几种方式byte/word/dword等,你选择你需要的方式
  相关解决方案