單片機(jī)的111條指令集合
1 MOV A,Rn 寄存器內(nèi)容送入累加器
2 MOV A,direct 直接地址單元中的數(shù)據(jù)送入累加器
3 MOV A,@Ri 間接RAM 中的數(shù)據(jù)送入累加器
4 MOV A,#tata 立即數(shù)送入累加器
5 MOV Rn,A 累加器內(nèi)容送入寄存器
6 MOV Rn,direct 直接地址單元中的數(shù)據(jù)送入寄存器
7 MOV Rn,#data 立即數(shù)送入寄存器
8 MOV direct,A 累加器內(nèi)容送入直接地址單元
9 MOV direct,Rn 寄存器內(nèi)容送入直接地址單元
10 MOV direct,direct 直接地址單元中的數(shù)據(jù)送入另一個(gè)直接地址單元
11 MOV direct,@Ri 間接RAM 中的數(shù)據(jù)送入直接地址單元
12 MOV direct,#data 立即數(shù)送入直接地址單元
13 MOV @Ri,A 累加器內(nèi)容送間接RAM 單元
14 MOV @Ri,direct 直接地址單元數(shù)據(jù)送入間接RAM 單元
15 MOV @RI,#data 立即數(shù)送入間接RAM 單元
16 MOV DRTR,#dat16 16 位立即數(shù)送入地址寄存器
17 MOVC A,@A+DPTR 以DPTR為基地址變址尋址單元中的數(shù)據(jù)送入累加器
18 MOVC A,@A+PC 以PC 為基地址變址尋址單元中的數(shù)據(jù)送入累加器
19 MOVX A,@Ri 外部RAM(8 位地址)送入累加器
20 MOVX A,@DPTR 外部RAM(16 位地址)送入累加器
21 MOVX @Ri,A 累計(jì)器送外部RAM(8 位地址)
22 MOVX @DPTR,A 累計(jì)器送外部RAM(16 位地址)
23 PUSH direct 直接地址單元中的數(shù)據(jù)壓入堆棧
24 POP direct 彈棧送直接地址單元
25 XCH A,Rn 寄存器與累加器交換
26 XCH A,direct 直接地址單元與累加器交換
27 XCH A,@Ri 間接RAM 與累加器交換
28 XCHD A,@Ri 間接RAM 的低半字節(jié)與累加器交換
算術(shù)操作類指令:
1 ADD A,Rn 寄存器內(nèi)容加到累加器
2 ADD A,direct 直接地址單元的內(nèi)容加到累加器
3 ADD A,@Ri 間接ROM 的內(nèi)容加到累加器
4 ADD A,#data 立即數(shù)加到累加器
5 ADDC A,Rn 寄存器內(nèi)容帶進(jìn)位加到累加器
6 ADDC A,direct 直接地址單元的內(nèi)容帶進(jìn)位加到累加器
7 ADDC A,@Ri 間接ROM 的內(nèi)容帶進(jìn)位加到累加器
8 ADDC A,#data 立即數(shù)帶進(jìn)位加到累加器
9 SUBB A,Rn 累加器帶借位減寄存器內(nèi)容
10 SUBB A,direct 累加器帶借位減直接地址單元的內(nèi)容
11 SUBB A,@Ri 累加器帶借位減間接RAM 中的內(nèi)容
12 SUBB A,#data 累加器帶借位減立即數(shù)
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,結(jié)果放在A
23 DIV AB A 除以B,結(jié)果放在A
24 DA A 累加器十進(jìn)制調(diào)整
布爾變量操作類指令:
1 CLR C 清進(jìn)位位
2 CLR bit 清直接地址位
3 SETB C 置進(jìn)位位
4 SETB bit 置直接地址位
5 CPL C 進(jìn)位位求反
6 CPL bit 置直接地址位求反
7 ANL C,bit 進(jìn)位位和直接地址位相“與”
8 ANL C,bit 進(jìn)位位和直接地址位的反碼相“與”
9 ORL C,bit 進(jìn)位位和直接地址位相“或”
10 ORL C,bit 進(jìn)位位和直接地址位的反碼相“或”
11 MOV C,bit 直接地址位送入進(jìn)位位
12 MOV bit,C 進(jìn)位位送入直接地址位
13 JC rel 進(jìn)位位為1 則轉(zhuǎn)移
14 JNC rel 進(jìn)位位為0 則轉(zhuǎn)移
15 JB bit,rel 直接地址位為1 則轉(zhuǎn)移
16 JNB bit,rel 直接地址位為0 則轉(zhuǎn)移
17 JBC bit,rel 直接地址位為1 則轉(zhuǎn)移,該位清零
邏輯操作數(shù)指令:
1 ANL A,Rn 累加器與寄存器相“與”
2 ANL A,direct 累加器與直接地址單元相“與”
3 ANL A,@Ri 累加器與間接RAM 單元相“與”
4 ANL A,#data 累加器與立即數(shù)相“與”
5 ANL direct,A 直接地址單元與累加器相“與”
6 ANL direct,#data 直接地址單元與立即數(shù)相“與”
7 ORL A,Rn 累加器與寄存器相“或”
8 ORL A,direct 累加器與直接地址單元相“或”
9 ORL A,@Ri 累加器與間接RAM 單元單元相“或”
10 ORL A,#data 累加器與立即數(shù)相“或”
11 ORL direct,A 直接地址單元與累加器相“或”
12 ORL direct,#data 直接地址單元與立即數(shù)相“或”
13 XRL A,Rn 累加器與寄存器相“異或”
14 XRL A,direct 累加器與直接地址單元相“異或”
15 XRL A,@Ri 累加器與間接RAM 單元單元相“異或”
16 XRL A,#data 累加器與立即數(shù)相“異或”
17 XRL direct,A 直接地址單元與累加器相“異或”
18 XRL direct,#data 直接地址單元與立即數(shù)相“異或”
19 CLR A 累加器清“0”
20 CPL A 累加器求反
21 RL A 累加器循環(huán)左移
22 RLC A 累加器帶進(jìn)位位循環(huán)左移
23 RR A 累加器循環(huán)右移
24 RRC A 累加器帶進(jìn)位位循環(huán)右移
25 SWAP A 累加器半字節(jié)交換
控制轉(zhuǎn)移類指令:
1 ACALL addr11 絕對(duì)(短)調(diào)用子程序
2 LCALL addr16 長(zhǎng)調(diào)用子程序
3 RET 子程序返回
4 RETI 中數(shù)返回
5 AJMP addr11 絕對(duì)(短)轉(zhuǎn)移
6 LJMP addr16 長(zhǎng)轉(zhuǎn)移
7 SJMP rel 相對(duì)轉(zhuǎn)移
8 JMP @A+DPTR 相對(duì)于DPTR 的間接轉(zhuǎn)移
9 JZ rel 累加器為零轉(zhuǎn)移
10 CJNE rel 累加器非零轉(zhuǎn)移
11 CJNE A,direct,rel 累加器與直接地址單元比較,不相等則轉(zhuǎn)移
12 CJNE A,#data,rel 累加器與立即數(shù)比較,不相等則轉(zhuǎn)移
13 CJNE Rn,#data,rel 寄存器與立即數(shù)比較,不相等則轉(zhuǎn)移
14 CJNE @Ri,#data,rel 間接RAM 單元與立即數(shù)比較,不相等則轉(zhuǎn)移
15 DJNZ Rn,rel 寄存器減1,非零轉(zhuǎn)移
16 DJNZ direct,erl 直接地址單元減1,非零轉(zhuǎn)移
17 NOP 空操作
記住指令表是學(xué)好單片機(jī)的第一步,也是重要一步.
評(píng)論