STOSB、STOSW 和 STOSD 指令分别将 AL/AX/EAX 的内容存入由 EDI 中偏移量指向的内存位置。EDI 根据方向标志位的状态递增或递减。
与 REP 前缀组合使用时,这些指令实现用同一个值填充字符串或数组的全部元素。例如,下面的代码就把 string1 中的每一个字节都初始化为 OFFh:
.data
Count = 100
string1 BYTE Count DUP(?)
.code
mov al, OFFh ;要保存的数值
mov edi,OFFSET string1 ;ED:[指向目标字符串
mov ecx,Count ;字符计数器
cld ;方向为正向
rep stosb ;用 AL 的内容实现填充