PUSH             Push Word onto Stack                Flags: not altered
 
PUSH source
 
          Logic:    SP  SP - 2
                    (SP)  source
 
    PUSH decrements SP by 2, then copies the operand to the new top of
    stack. The source of a PUSH instruction cannot be an 8-bit register.
 
  --------------------------------------------------------------------------
   Operands                  Clocks   Transfers  Bytes   Example
   register                    15         1        1     PUSH BX
   seg-reg (CS illegal)        14         1        1     PUSH ES
   memory                   24 + EA       2       2-4    PUSH PARAMETERS
  --------------------------------------------------------------------------
 
       Notes:         Even if the source refers to a byte in memory, a
                      full word is always pushed.
 
                      The 80286 and 80386 microprocessors will push a
                      different value on the stack for the instruction
                      PUSH SP than will the 8086/8088.  The 80286 and
                      80386 push the value of SP before SP is incremented,
                      while the 8086/8088 increments SP first, then pushes
                      SP on the stack.  Use the following code instead of
                      a PUSH SP in order to obtain the same results on all
                      microprocessors.
 
                                  PUSH    BP
                                  MOV     BP, SP
                                  XCHG    BP, [BP]
 
                      This code functions in the same manner as a PUSH SP
                      on the 8088/8086.

Seealso:



This page last updated on Fri Nov 30 10:49:50 MSK 2001
Copyright © 1992-2001, Vitaly Filatov, Moscow, Russia
Webmaster