?? danpianji.txt
字號:
1、以累加器A為目的操作數(shù)的尋址方式
MOV A,#DATA
MOV A,#0FFH; 將立即數(shù)OFFH送給累加器A,作為A的內(nèi)容;
MOV A,DIRECT
MOV A,30H;將30H單元作為一個地址,把該地址的內(nèi)容取出來送給A作為A的內(nèi)容;
MOV A,Rn
MOV A,R7;將R7的內(nèi)容取出來送給A,作為A的內(nèi)容;
MOV A,@Ri
MOV A,@R1;設R1的內(nèi)容為30H,則執(zhí)行該指令的功能是將R1的內(nèi)容作為一個地址,在把該地址中的內(nèi)容去出來送給A,作為A的內(nèi)容;
以直接地址為目的操作數(shù)的尋址方式
MOV DIRECT,#DATA
MOV 30H,#88H;將立即數(shù)88H送到地址30H單元。
MOV DIRECT,DIRECT
MOV 48H,33H;將單元地址為33H的內(nèi)容送到單元地址48H。
MOV DIRECT,RN
MOV 79H,R6;將R6的內(nèi)容取出來送到地址79H;
MOV DIRECT,@Ri
MOV 80H,@R1;把R1的內(nèi)容取出來作為一個地址,在把該地址的對應的內(nèi)容取出來送到80H。
MOV DIRECT,A;
MOV 80H,A;將累加器A的內(nèi)容送到地址單元80H中;
以寄存器RN為目的的地址尋址方式
MOV RN,#DATA
MOV R5,#21H;將立即數(shù)21H送給R5;
MOV RN,DIRECT
MOV R3,P1;將P1對應地址單元的內(nèi)容送給R3;
MOV RN,A
MOV R4,A;將累加器A的內(nèi)容送給寄存器R4;
以寄存器間接尋址為目的的尋址方式
MOV @Ri,#DATA
MOV @R1,#25H;將立即數(shù)25H送給以R1為內(nèi)容為單元地址的空間當中。
MOV @Ri,DIRECT
MOV @R0,25H;將單元地址為25H的內(nèi)容送到以R0為內(nèi)容的單元地址空間中。
MOV @RI,A
MOV @RO,A;將累加器A的內(nèi)容送到以R0為內(nèi)容得單元地址空間中;
以數(shù)據(jù)指針為目的的16位數(shù)據(jù)傳送指令
MOV DPTR,#DATA16
這條指令的功能是把16位立即數(shù)的高8位送給DPTR的高8為DPH;低8位送給DPTR的低8位DPL,這是唯一一條16為位立即數(shù)傳送指令。
MOVX指令
用于片內(nèi)片外數(shù)據(jù)交換的唯一方式。CPU無論是將片外的數(shù)據(jù)接收進來進行相應的操作處理,還是將處理完的數(shù)據(jù)送給外部執(zhí)行功能都必須將采用此類指令。
MOVX A,@RI
MOVX A,@DPTR
MOVX @RI,A
MOVX @DPTR,A
設單片機系統(tǒng)拓展了2KB的外部RAM,是將片外0FAH單元的內(nèi)容送到04FFH單元;
解:
需要用MOVX轉(zhuǎn)化
MOV RO,#OFAH;將地址OFAH作為立即數(shù)傳給寄存器R0;
MOVX A,@R0;將R0的內(nèi)容作為單元地址空間,將該地址中的內(nèi)容傳送給累加器A;
MOV DPTR,#04FFH;將地址04FFH作為立即數(shù)傳給寄存器傳給DPTR
MOVX @DPTR,A;將寄存器A中的內(nèi)容傳送給以DPTR中的內(nèi)容作為地址的單元空間中;也就是將A中的內(nèi)容給04FFH;
MOVC指令
用于對程序寄存器的操作,她是將片外程序寄存器的內(nèi)容讀給A.
MOVC A,@A+PC
先將PC指針的內(nèi)容加1,然后再將PC的值和累加器A(無符號數(shù))的值想家形成新的地址,取出該地址的內(nèi)容在傳送給A。
MOVC A,@A+DPTR
以DPTR為基礎寄存器,將DPTR的內(nèi)容和A(無符號數(shù))想家后得到一個16位地址,由該地址指出的程序寄存器單元傳送給A。
交換指令
半字節(jié)交換指令
XCHD A,@RI;累加器的低半字節(jié)和RO或R1的低半字節(jié)進行交換,各自的高半字節(jié)保持不變。
字節(jié)交換指令
XCH A,DIRECT;
XCH A,RN;
XCH A,@RI
累加器A的低四位和高四位的交換指令
SWAP A;
設A=ABH,執(zhí)行SWAP A后,A=BAH.
算數(shù)運算類指令
加法指令
1:不帶進位的加法運算指令
ADD A,#DATA
ADD A,DIRECT
ADD A ,RN
ADD A,@RI
2:帶進位加法運算指令
ADDC A,#DATA
ADDC A,DIRECT
ADDC A ,RN
ADDC A,@RI
3:自增1運算指令
INC A
INC DIRECT
INC RN
INC @RI
減法指令
帶借位減法指令
SUBB
自減1運算指令
DEC
乘法運算指令
MUL AB
乘法運算指令的被乘數(shù)只能累加器A中,成熟只能存于寄存器B中。完成兩個8位的二進制相乘,結(jié)果高8位
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -