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.
PUSH Instruction
 ◄Detail► ◄Key► ◄Example►                    ◄Up► ◄Contents► ◄Index► ◄Back►
────────────────────────────────────────────────────────────────────────────
 
  Title:    Push                                  Flags: O D I T S Z A P C
                                                         ═════════════════
  Syntax:   PUSH src                                          -none-
            PUSHW src
            PUSHD src
 
  See also: POP, POPA, POPF, LEAVE
 
  Description:
 
     Pushes the source operand onto the stack. SP is decreased by 2 and
     the source value is copied to SS:SP. The operand can be a memory
     location, a general-purpose 16-bit register, or a segment
     register. On the 80186-80486 processors, the operand can also be a
     constant.
 
     On the 80386/486, 32-bit values can be pushed by specifying a
     32-bit operand. ESP is decreased by 4 for 32-bit pushes.
 
     On the 8088 and 8086, push sp saves the value of SP after the
     push. On the 80186-80486 processors, push sp saves the value of SP
     before the push.
 
     The PUSHW and PUSHD instructions push a word (2 bytes) and a double-
     word (4 bytes), respectively.
                                    -♦-