MOVSW Move String Word Flags: not altered
MOVSW
Logic: (ES:DI) (DS:SI)
if DF = 0
SI SI + 2
DI DI + 2
else
SI SI - 2
DI DI - 2
This instruction copies the word pointed to by DS:SI to the location
pointed to by ES:DI. After the move, SI and DI are incremented (if the
direction flag is cleared) or decremented (if the direction flag is
set), to point to the next word.
--------------------------------------------------------------------------
Operands Clocks Transfers Bytes Example
- 26 2 1 MOVSW
(repeat) 9+25/rep 2/rep 1 REP MOVSW
-------------------------------- Example ---------------------------------
Assuming BUFFER1 as been defined somewhere as:
BUFFFER1 DB 100 DUP (?)
the following example moves 50 words (100 bytes) from BUFFER1 to
BUFFER2:
CLD ;Move in the forward direction
LEA SI, BUFFER1 ;Source address to SI
LEA DI, BUFFER2 ;Destination address to DI
MOV CX,50 ;Used by REP; moving 50 words
REP MOVSW ; ...and move it.
Seealso:
This page last updated on Fri Nov 30 10:49:50 MSK 2001
Copyright © 1992-2001, Vitaly Filatov, Moscow, Russia
Webmaster