首页 > 代码库 > stos 串存储指令

stos 串存储指令

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 串存储指令