数据传送类指令:
1 MOV A,Rn 寄存器内容送入累加器
2 MOV A,direct 直接地址单元中的数据送入累加器
3 MOV A,@Ri 直接RAM 中的数据送入累加器
4 MOV A,#tata 当即数送入累加器
5 MOV Rn,A 累加器内容送入寄存器
6 MOV Rn,direct 直接地址单元中的数据送入寄存器
7 MOV Rn,#data 当即数送入寄存器
8 MOV direct,A 累加器内容送入直接地址单元
9 MOV direct,Rn 寄存器内容送入直接地址单元
10 MOV direct,direct 直接地址单元中的数据送入另一个直接地址单元
11 MOV direct,@Ri 直接RAM 中的数据送入直接地址单元
12 MOV direct,#data 当即数送入直接地址单元
13 MOV @Ri,A 累加器内容送直接RAM 单元
14 MOV @Ri,direct 直接地址单元数据送入直接RAM 单元
15 MOV @RI,#data 当即数送入直接RAM 单元
16 MOV DRTR,#dat16 16 位当即数送入地址寄存器
17 MOVC A,@A+DPTR 以DPTR为基地址变址寻址单元中的数据送入累加器
18 MOVC A,@A+PC 以PC 为基地址变址寻址单元中的数据送入累加器
19 MOVX A,@Ri 外部RAM(8 位地址)送入累加器
20 MOVX A,@DPTR 外部RAM(16 位地址)送入累加器
21 MOVX @Ri,A 累计器送外部RAM(8 位地址)
22 MOVX @DPTR,A 累计器送外部RAM(16 位地址)
23 PUSH direct 直接地址单元中的数据压入仓库
24 POP direct 弹栈送直接地址单元
25 XCH A,Rn 寄存器与累加器交流
26 XCH A,direct 直接地址单元与累加器交流
27 XCH A,@Ri 直接RAM 与累加器交流
28 XCHD A,@Ri 直接RAM 的低半字节与累加器交流
算术操作类指令:
1 ADD A,Rn 寄存器内容加到累加器
2 ADD A,direct 直接地址单元的内容加到累加器
3 ADD A,@Ri 直接ROM 的内容加到累加器
4 ADD A,#data 当即数加到累加器
5 ADDC A,Rn 寄存器内容带进位加到累加器
6 ADDC A,direct 直接地址单元的内容带进位加到累加器
7 ADDC A,@Ri 直接ROM 的内容带进位加到累加器
8 ADDC A,#data 当即数带进位加到累加器
9 SUBB A,Rn 累加器带借位减寄存器内容
10 SUBB A,direct 累加器带借位减直接地址单元的内容
11 SUBB A,@Ri 累加器带借位减直接RAM 中的内容
12 SUBB A,#data 累加器带借位减当即数
13 INC A 累加器加1
14 INC Rn 寄存器加1
15 INC direct 直接地址单元加1
16 INC @Ri 直接RAM 单元加1
17 DEC A 累加器减1
18 DEC Rn 寄存器减1 1 12
19 DEC direct 直接地址单元减1
20 DEC @Rj 直接RAM 单元减 1
21 INC DPTR 地址寄存器DPTR 加 1
22 MUL AB A 乘以B,成果放在A
23 DIV AB A 除以B,成果放在A
24 DA A 累加器十进制调整
布尔变量操作类指令:
1 CLR C 清进位位
2 CLR bit 清直接地址位
3 SETB C 置进位位
4 SETB bit 置直接地址位
5 CPL C 进位位求反
6 CPL bit 置直接地址位求反
7 ANL C,bit 进位位和直接地址位相“与”
8 ANL C,bit 进位位和直接地址位的反码相“与”
9 ORL C,bit 进位位和直接地址位相“或”
10 ORL C,bit 进位位和直接地址位的反码相“或”
11 MOV C,bit 直接地址位送入进位位
12 MOV bit,C 进位位送入直接地址位
13 JC rel 进位位为1 则搬运
14 JNC rel 进位位为0 则搬运
15 JB bit,rel 直接地址位为1 则搬运
16 JNB bit,rel 直接地址位为0 则搬运
17 JBC bit,rel 直接地址位为1 则搬运,该位清零
逻辑操作数指令:
1 ANL A,Rn 累加器与寄存器相“与”
2 ANL A,direct 累加器与直接地址单元相“与”
3 ANL A,@Ri 累加器与直接RAM 单元相“与”
4 ANL A,#data 累加器与当即数相“与”
5 ANL direct,A 直接地址单元与累加器相“与”
6 ANL direct,#data 直接地址单元与当即数相“与”
7 ORL A,Rn 累加器与寄存器相“或”
8 ORL A,direct 累加器与直接地址单元相“或”
9 ORL A,@Ri 累加器与直接RAM 单元单元相“或”
10 ORL A,#data 累加器与当即数相“或”
11 ORL direct,A 直接地址单元与累加器相“或”
12 ORL direct,#data 直接地址单元与当即数相“或”
13 XRL A,Rn 累加器与寄存器相“异或”
14 XRL A,direct 累加器与直接地址单元相“异或”
15 XRL A,@Ri 累加器与直接RAM 单元单元相“异或”
16 XRL A,#data 累加器与当即数相“异或”
17 XRL direct,A 直接地址单元与累加器相“异或”
18 XRL direct,#data 直接地址单元与当即数相“异或”
19 CLR A 累加器清“0”
20 CPL A 累加器求反
21 RL A 累加器循环左移
22 RLC A 累加器带进位位循环左移
23 RR A 累加器循环右移
24 RRC A 累加器带进位位循环右移
25 SWAP A 累加器半字节交流
操控搬运类指令:
1 ACALL addr11 肯定(短)调用子程序
2 LCALL addr16 长调用子程序
3 RET 子程序回来
4 RETI 中数回来
5 AJMP addr11 肯定(短)搬运
6 LJMP addr16 长搬运
7 SJMP rel 相对搬运
8 JMP @A+DPTR 相对于DPTR 的直接搬运
9 JZ rel 累加器为零搬运
10 CJNE rel 累加器非零搬运
11 CJNE A,direct,rel 累加器与直接地址单元比较,不相等则搬运
12 CJNE A,#data,rel 累加器与当即数比较,不相等则搬运
13 CJNE Rn,#data,rel 寄存器与当即数比较,不相等则搬运
14 CJNE @Ri,#data,rel 直接RAM 单元与当即数比较,不相等则搬运
15 DJNZ Rn,rel 寄存器减1,非零搬运
16 DJNZ direct,erl 直接地址单元减1,非零搬运
17 NOP 空操作
记住指令表是学好单片机的第一步,也是重要一步.
单片机的111条指令调集
数据传送类指令:1MOVA,Rn寄存器内容送入累加器2MOVA,direct直接地址单元中的数据送入累加器3MOVA,@Ri间接RAM中的数据
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/iot/258005.html