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.
OUTS Instruction
 Detail Key                               Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
  Title:    Output String to Port                 Flags: O D I T S Z A P C
            80186-80486 Only                             ═════════════════
                                                              -none-
  Syntax:   OUTS DX,src
            OUTSB
            OUTSW
            OUTSD (80386/486 Only)
 
  See also: .186, INS, IN, OUT
 
  Description:
 
     Sends a string to a port. The string is considered the source and
     must be pointed to by DS:SI (even if an operand is given). The
     output port is specified in DX. For each element sent, SI is
     adjusted according to the size of the operand and the status of
     the direction flag. SI is increased if the direction flag has been
     cleared with CLD or decreased if the direction flag has been set
     with STD.
 
     If the OUTS form of the instruction is used, an operand must be
     provided to indicate the size of data elements to be sent. A
     segment override can be given. If OUTSB (bytes), OUTSW (words), or
     OUTSD (doublewords) is used, the instruction determines the size
     of the data elements to be sent.
 
     OUTS and its variations are normally used with the REP prefix.
     Before the instruction is executed, CX should contain the number
     of elements to send. In protected mode, a general-protection fault
     occurs if OUTS is used when the current privilege level is greater
     than the value of the IOPL flag.
                                    -♦-