stos 包括 stosb stosw stosd, 涉及的寄存器是eax, edi, 功能如下:
stosb 将al中的值复制到 byte ptr es:[edi] 中, 同时edi++
stosw 将ax中的值复制到 word ptr es:[edi] 中, 同时edi++
stosd 将eax中的值复制到 dword ptr es:[edi] 中, 同时edi++
例子:
int a[0x22] = {0}; //平时习惯的初始化方法, 但由于汇编时调用了memset函数(其内部代码很多), 所以效率低.
__asm MOV EAX, 0XCC //无用代码, 起到提示作用
__asm MOV EAX, 0XCC //
int b[0x33];
__asm //下面这三句汇编语句用来初始化数组b, 简单高效
{
XOR EAX, EAX lea edi, b
mov ecx, 0x33
rep stosd
}
stos 串存储指令
原文:http://www.cnblogs.com/goalpower/p/4032615.html