一、工作寄存器
1.RO_间接寻址寄存器
2.R1_定时器/计数器
3.R2_程序计数器PC和堆栈
4.R3_状态寄存器STATUS
7 6 5 4 3 2 1 0
GP PS1 PS0 T P Z DC C
5.R4_RAM选择寄存器
6.R5—R6_分别为口5、口6的输入/输出寄存器
7.RF_中断状态寄存器
7 6 5 4 3 2 1 0
- - - - - EXIF ICIF TCIF
8.R10—R3F_为48个八位的一般通用寄存器
二、特殊功能寄存器
1.A_累加器
2.CONT_控制寄存器
7 6 5 4 3 2 1 0
- INT TS TE PAB PSR2 PSR1 PSR0
3.IOC5—IOC6_分别控制口5、口6的输入输出状态
4.IOCB_下拉控制寄存器
7 6 5 4 3 2 1 0
DP7 PD6 PD5 PD4 - PD2 PD1 PD0
5.IOCC_集电极开路控制寄存器
7 6 5 4 3 2 1 0
0D7 0D6 0D5 0D4 0D3 0D2 0D1 0D0
6.IOCD_上拉控制寄存器
7 6 5 4 3 2 1 0
DH7 PH6 PH5 PH4 PH3 PH2 PH1 PH0
7.IOCE_WTD控制寄存器
7 6 5 4 3 2 1 0
WTDE EIS - ROC - - - -
8.IOCF_中断屏蔽寄存器
7 6 5 4 3 2 1 0
- - - - - EXIE ICIE TCIE
三、指令
01.ADD A,R A+R->A
02.ADD R,A A+R->R
03.AND A,R A&R->A
04.AND R,A A&R->R
05.CLR R 0->R
06.CLRA 0->A
07.COM R /R->R
08.COMA R /R->A
09.DAA A寄存器调整为BCD值
10.DEC R R-1->R
11.DECA R R-1->A
12.DJZ R R-1->R结果为零就跳过下一条指令
13.DJZA R R-1->A结果为零就跳过下一条指令
14.INC R R+1->R
15.INCA R R+1->A
16.JZ R R+1->R结果为零就跳过下一条指令
17.JZA R R+1->A结果为零就跳过下一条指令
18.MOV R,A A->R
19.MOV A,R R->A
20.MOV R,R R->R
21.OR A,R A OR R->A
22.OR R,A A OR R->R
23.SUB A,R R-A->A
24.SUB R,A A-R->R
25.XOR A,R A XOR R->A
26.XOR R,A A XOR R->R
27.BC R,bit 0->R(bit)
28.BS R,bit 1->R(bit)
29.JBC R,bit 如果R(bit)=0,则跳过下一条指令
30.JBS R,bit 如果R(bit)=1,则跳过下一条指令
31.RLC R R(n)->R(n+1) R(7)->C C->R(0)
32.RLCA R R(n)->A(n+1) R(7)->C C->A(0)
33.RRC R R(n)->R(n-1) R(0)->C C->R(7)
34.RRCA R R(n)->A(n-1) R(0)->C C->A(7)
35.SWAP R R(0-3)->R(4-7) R(4-7)->R(0-3)
36.SWAPA R R(0-3)->Z(4-7) R(4-7)->Z(0-3)
37.ADD A,K A+K->A
38.AND A,K A&K->A
39.CALL K PC+1->[SP] (PAGE,K)->PC
40.CONTR CONT->A
41.CONTW A->CONT
42.DISI 禁止中断
43.ENI 使能中断
44.INT PC+1->[SP] 001H->PC
45.IOR R IOCR->A
46.IOW R A->IOCR
47.JMP K (PAGE,K)->PC
48.MOV A,K K->A
49.NOP 空指令
50.OR A,K A OR K->A
51.RET [堆栈顶端]-》PC
52.RETI [堆栈顶端]-》PC使能中断
53.RETL K K->A [堆栈顶端]-》PC
54.SLEP 0->WDT, 振荡器停止振荡
55.SUB A,K K-A->A
56.TBL PC+A->PC
57.WDTC 0->WDT
58.XOR A,K A XOR K->A