
KS57C0502 / C0504 / P0504单片机
地址空间
+
编程提示 - 选择你的工作寄存器区
下面的示例显示了正确的编程方法来选择工作寄存器区域:
1.当ERB = "0" :
VENT2
;
INT0
1,0,INT0
推
SRB
推
推
推
推
SMB
LD
LD
LD
INCS
LD
LD
POP
POP
POP
POP
POP
IRET
SB
2
HL
WX
YZ
EA
0
EA,#00H
80H,EA
HL,#40H
HL
WX , EA
YZ , EA
EA
YZ
WX
HL
SB
;
;
;
;
;
;
;
教统局
←
1 ,雇员再培训局
←
0 ,跳转到INT0地址
PUSH当前SMB , SRB
非必要的指令,因为该局= "0"
PUSH HL寄存器堆栈
PUSH WX寄存器堆栈
PUSH YZ寄存器堆栈
PUSH EA寄存器堆栈
;
;
;
;
;
POP从堆栈EA注册
从堆栈POP YZ寄存器
从堆栈POP WX寄存器
从堆栈POP HL寄存器
POP目前SMB , SRB
在POP指令与PUSH指令的执行交替进行。如果一个SMB ninstruction被用在
中断服务例程, PUSH和POP指令的SB必须被用来存储和恢复当前的SMB
和硫酸盐还原菌的值,如下面的实施例2 。
2.当ERB = "1" :
VENT2
;
INT0
1,1,INT0
推
SRB
SMB
LD
LD
LD
INCS
LD
LD
POP
IRET
SB
2
0
EA,#00H
80H,EA
HL,#40H
HL
WX , EA
YZ , EA
SB
;
;
;
教统局
←
1 ,雇员再培训局
←
1 ,跳转到INT0地址
存储当前SMB , SRB
选择寄存器组2
;
恢复SMB , SRB
;
2–11