Chapter
3.
Instruction
Set
PUSH
344
PUSH
PSW
PUSH B
PUSH D
PUSH H
subroutine
coding
POP
POP
POP
POP
RET
H
D
B
PSW
Notice
that
the
;equence
of
the POP instructions
is
the opposite
of
the PUSH instruction <,equence.
PUSH
The PUSH instruction copies two bvtes
of
data
to
the ,tdck.
Thi~
ddta may be the
contenh
of a register pair or
the Program
Status
Word,
d,
explained below:
PUSH Register
Pair
PUSH
decrement,
the stack pointer register- by one and copies the
content,
of
the high-order regi,tcr
of
the
register pdir
to
the resulting address. PUSH then
decrement;
the pointer again dnd
copie<,
the low-order
regi<,ter
to
the resulting addre<'s. The source registers remain unchanged.
Opcode Operand
PUSH
The operand may specify the B&C, D&E,
or-
H&L
register pair,. PUSH
PSW
is
explained ,cpdrdtely.
Example:
~
__
I~1
_R
__
P~O
____
O
__
~1
I
Cycle,>:
States:
Addressi
ng:
Flags:
3
11
(13
on 8085)
register indirect
none
Assume
that
register B contains 2AH, the C register- cont,dins 4CH, and the stack pointer
is
set at
9AAF.
The
instruction PUSH B stores the B register at memory
addre,s
9AAEH and the C register
at
9AADH. The stack
pointer
is
set
to
9AADH: