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.
                                    -♦-