16 bit Assembly
Home Site Map Instruction Index
The PUSH instructions are used to store the registers in the stack.
PUSH has 2 parts, the Instruction and an operand which can be either a Register, 16 bit immediate value, or a 16 bit memory address.
PUSHA has 1 part, the Instruction. It saves all the arithmetic Registers in the stack in the following sequence. AX, CX, DX, BX, SP, BP, SI, DI.
PUSHF has 1 part, the Instruction. It saves the Flags Register on the stack.
All other PUSH instructions save the register selected by the operand.
Stack items are retrieved using the POP instruction.
Instruction | Code |
---|---|
PUSHF | 9C |
PUSHA | 60 |
PUSH AX | 50 |
PUSH CX | 51 |
PUSH DX | 52 |
PUSH BX | 53 |
PUSH SP | 54 |
PUSH BP | 55 |
PUSH SI | 56 |
PUSH DI | 57 |
PUSH ES | 06 |
PUSH SS | 16 |
PUSH CS | 0E |
PUSH DS | 1E |
PUSH FS | 0F A0 |
PUSH GS | 0F A8 |
PUSH 0x0303 | 68 03 00 |
PUSH [BX] | FF 37 |
PUSH [BX+2] | FF 77 02 |