STOSB Store String Byte Flags: not altered
STOSB
Logic: (ES:DI) AL
if DF = 0
DI DI + 1
else
DI DI - 1
STOSB copies the value in AL into the location pointed to by ES:DI. DI
is then incremented (if the direction flag is cleared) or decremented
(if the direction flag is set), in preparation for storing AL in the
next location.
--------------------------------------------------------------------------
Operands Clocks Transfers Bytes Example
- 11 1 1 STOSB
(repeat) 9 + 10/rep 1/rep 1 REP STOSB
--------------------------------------------------------------------------
When used in conjunction with the REP prefixes, the Store String
instructions are useful for initializing a block of memory. For
example, the following code would initialize the 100-byte memory block
at BUFFER to 0:
MOV AL,0 ;The value to initialize BUFFER to
LEA DI,BUFFER ;Starting location of BUFFER
MOV CX,100 ;Size of BUFFER
CLD ;Let's move in forward direction
REP STOSB ;Compare this line to example for STOS
Seealso:
This page last updated on Fri Nov 30 10:49:50 MSK 2001
Copyright © 1992-2001, Vitaly Filatov, Moscow, Russia
Webmaster