Assembly Language Help (alang.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
MOVS Instruction
 Detail Key Example                    Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
  Title:    Move String Data                      Flags: O D I T S Z A P C
                                                         ═════════════════
  Syntax:   MOVS dest,src                                     -none-
            MOVSB
            MOVSW
            MOVSD (80386/486 Only)
 
  See also: REP, LODS, STOS, STD
 
  Description:
 
     Moves a string from one area of memory to another. The source
     string must be pointed to by DS:SI, and the destination address
     must be pointed to by ES:DI (even if operands are given).
 
     For each element moved, DI and SI are adjusted according to the
     size of the operands and the status of the direction flag. They
     are increased if the direction flag has been cleared with CLD, or
     decreased if the direction flag has been set with STD.
 
     If the MOVS form of the instruction is used, operands must be
     provided to indicate the size of the data elements to be
     processed. A segment override can be given for the source operand
     (but not for the destination). If MOVSB (bytes), MOVSW (words), or
     MOVSD (doublewords) is used, the instruction determines the size
     of the data elements to be processed.
 
     Use MOVS and its variations with the REP prefix.
                                    -♦-