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