
PIC18FXX39
DS30485A-page 240
Preliminary
2002 Microchip Technology Inc.
POP
Pop Top of Return Stack
Syntax:
[ label ] POP
Operands:
None
Operation:
(TOS)
→ bit bucket
Status Affected:
None
Encoding:
0000
0110
Description:
The TOS value is pulled off the
return stack and is discarded. The
TOS value then becomes the previ-
ous value that was pushed onto the
return stack.
This instruction is provided to
enable the user to properly manage
the return stack to incorporate a
software stack.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
No
operation
POP TOS
value
No
operation
Example:
POP
GOTO
NEW
Before Instruction
TOS
=
0031A2h
Stack (1 level down)
=
014332h
After Instruction
TOS
=
014332h
PC
=
NEW
PUSH
Push Top of Return Stack
Syntax:
[ label ] PUSH
Operands:
None
Operation:
(PC+2)
→ TOS
Status Affected:
None
Encoding:
0000
0101
Description:
The PC+2 is pushed onto the top of
the return stack. The previous TOS
value is pushed down on the stack.
This instruction allows to implement
a software stack by modifying TOS,
and then push it onto the return
stack.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
PUSH PC+2
onto return
stack
No
operation
No
operation
Example:
PUSH
Before Instruction
TOS
=
00345Ah
PC
=
000124h
After Instruction
PC
=
000126h
TOS
=
000126h
Stack (1 level down)
=
00345Ah