| |
Store String
86/88 |
Y |
186 |
Y |
286 |
Y |
386 |
Y |
486 |
Y |
STOS/STOSB/STOSW/STOSD destination |
Ovfl |
N |
Dir |
N |
Int |
N |
Trap |
N |
Sign |
N |
Zero |
N |
Aux |
N |
Prty |
N |
Carry |
N |
STOS copies the value (byte or word) in AL or AX 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 the accumulator in the next location.
Note: This instruction is always translated by the
assembler into either STOSB, Store String Byte, or
STOSW, Store String Word, depending upon whether
destination-string refers to a string of bytes or
words. In either case, however, you must explicitly
load the DI register with the offset of the string.
------------------------------------ Timing ----------------------------------
OpCode Instruction 386 286 86
AA STOS m8 4 3 11
AB STOS m16 4 3 11
AB STOS m32 4
AA STOSB 4 3 11
AB STOSW 4 3 11
AB STOSD 4
------------------------------------ Logic -----------------------------------
(ES:DI) = Accumulator
if DF = 0 then
DI = DI + n
else
DI = DI - n
See Also CMPS LODS MOVS SCAS REP REPE REPNE CLD STD |