![數(shù)據(jù)傳送指令_第1頁(yè)](http://file4.renrendoc.com/view7/M02/1D/2D/wKhkGWb4LkSAVqnHAALpSrqU_5o808.jpg)
![數(shù)據(jù)傳送指令_第2頁(yè)](http://file4.renrendoc.com/view7/M02/1D/2D/wKhkGWb4LkSAVqnHAALpSrqU_5o8082.jpg)
![數(shù)據(jù)傳送指令_第3頁(yè)](http://file4.renrendoc.com/view7/M02/1D/2D/wKhkGWb4LkSAVqnHAALpSrqU_5o8083.jpg)
![數(shù)據(jù)傳送指令_第4頁(yè)](http://file4.renrendoc.com/view7/M02/1D/2D/wKhkGWb4LkSAVqnHAALpSrqU_5o8084.jpg)
![數(shù)據(jù)傳送指令_第5頁(yè)](http://file4.renrendoc.com/view7/M02/1D/2D/wKhkGWb4LkSAVqnHAALpSrqU_5o8085.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
3.3MCS-51單片機(jī)的指令系統(tǒng) 按指令功能可將80C51分為以下五類:數(shù)據(jù)傳送類算術(shù)運(yùn)算類邏輯運(yùn)算與循環(huán)類控制轉(zhuǎn)移類位操作類3.3.1數(shù)據(jù)傳送類指令數(shù)據(jù)傳送類指令共28條,功能是將源操作數(shù)送到目的處。指令執(zhí)行后,源操作數(shù)不變,目的操作數(shù)被源操作數(shù)取代。一般不影響PSW的標(biāo)志位。數(shù)據(jù)傳送類指令用到的助記符有MOV、MOVX、MOVC、XCH、XCHD、SWAP、PUSH、POP8種。數(shù)據(jù)傳送指令是一種最基本最常用的操作,在通常的程序中占有極大的比例??梢赃M(jìn)行如下分類:★片內(nèi)數(shù)據(jù)傳送指令:MOV棧操作指令PUSHPOP交換指令XCHXCHDSWAP★片外程序存貯器傳送指令:MOVC★片外數(shù)據(jù)存貯器傳送指令:MOVX數(shù)據(jù)傳送指令操作域示意圖如下:片外程序存儲(chǔ)器ROMEPROM特殊功能寄存器SFR片內(nèi)RAM128字節(jié)片外數(shù)據(jù)存儲(chǔ)器RAMMOVCMOVXMOVPUSHPOPXCHXCHD
數(shù)據(jù)傳送指令操作域示意圖1.以A為目的操作數(shù)MOVA,Rn ;A←(Rn),n=0~7MOVA,direct ;A←(direct)MOVA,@Ri ;A←((Ri)),i=0、1MOVA,#data ;A←data上述指令是將源操作數(shù)指定的內(nèi)容送到累加器A中。上述操作只影響PSW的P標(biāo)志位。2.以Rn為目的操作數(shù)MOVRn,A ;Rn←(A)MOVRn,direct;Rn←(direct)MOVRn,#data ;Rn←#data上述指令是將源操作數(shù)指定的內(nèi)容送到當(dāng)前工作寄存器組R0—R7中的某個(gè)寄存器。例如:若(A)=68H,(R5)=3AH,(40H)=F8H,執(zhí)行以下每條指令后,R5中的內(nèi)容分別為:MOVR5,#0A3H;(R5)=A3HMOVR5,40H;(R5)=F8HMOVR5,A;(R5)=68H注:8051指令系統(tǒng)中沒(méi)有“MOVRn,Rn”傳送指令。3.以直接地址為目的操作數(shù)MOVdirect,A ;direct←(A)MOVdirect,Rn ;direct←(Rn)MOVdirect,direct;目的direct←(源direct)MOVdirect,@Ri ;direct←((Ri))
MOVdirect,#data;direct←#data上述指令是將源操作數(shù)指定的內(nèi)容送到由直接地址direct所指出的片內(nèi)存儲(chǔ)單元中。應(yīng)用舉例MOVP1,#0FEH;11111110B可以使P1.0上的發(fā)光二極管點(diǎn)亮MOVP1,#0F0H;11110000B可以使P1口上的上面4個(gè)發(fā)光二極管點(diǎn)亮P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.75v例如:若(A)=68H,(R1)=40H,(40H)=F8H,執(zhí)行以下每條指令后,片內(nèi)RAM字節(jié)單元60H中的內(nèi)容分別為:MOV60H,#0A3H;(60H)=A3HMOV60H,40H;(60H)=F8HMOV60H,A;(60H)=68HMOV60H,R1;(60H)=40HMOV60H,@R1;(60H)=F8H注:以上各條指令視為互相獨(dú)立。4.以間接地址為目的操作數(shù)MOV@Ri,A ;(Ri)←A,i=0、1
MOV@Ri,direct ;(Ri)←(direct)MOV@Ri,#data ;(Ri)←#data例如:設(shè)(30H)=6FH,(R1)=40H,MOV@R1,30H結(jié)果30H單元中數(shù)據(jù)取出送入R1間接尋址的40H單元,(40H)=6FH。內(nèi)部RAM間數(shù)據(jù)傳送路徑A累加器Direct直接尋址Rn寄存器#data立即數(shù)@Ri間接尋址5.以DPTR為目的操作數(shù)MOVDPTR,#data16;DPTR←#data16例如執(zhí)行MOVDPTR,#2000H后,(DPTR)=2000H。DPH←20H,DPL←00H這是唯一的16位立即數(shù)傳送指令,把16位常數(shù)送入DPTR,通常用于把16位地址送入DPTR。所以DPTR又稱為地址指針.6.訪問(wèn)外部數(shù)據(jù)RAM
在8051指令系統(tǒng)中,訪問(wèn)片外RAM只能用寄存器間接尋址,與累加器A配合,共四條指令。MOVXA,@Ri ;A←((Ri)),i=0、1MOVX@Ri,A ;(Ri)←A
尋址范圍是片外256BRAM。
MOVXA,@DPTR;A←((DPTR))MOVX@DPTR,A;(DPTR)←A
尋址范圍是片外64KBRAM。例如:若(R0)=26H,(0026H)=69H,則執(zhí)行指令“MOVXA,@R0”后,把片外數(shù)據(jù)存儲(chǔ)器0026H單元中的數(shù)據(jù)69H送入累加器A中;若(DPTR)=5620H,(A)=98H,則執(zhí)行指令“MOVX@DPTR,A”后,就將98H送入了片外數(shù)據(jù)存儲(chǔ)器地址為5620H的存儲(chǔ)單元中。7.讀ROM指令(查表指令)注:數(shù)據(jù)表格放在程序存儲(chǔ)器中(只有兩條指令)。①近程查表指令(256B)MOVCA,@A+PC;A←((A)+(PC))只能查找指令所在地址向前128B或向后127B范圍內(nèi)的常數(shù)或代碼。②遠(yuǎn)程查表指令(64KB)MOVCA,@A+DPTR ;A←((A)+(DPTR))查表范圍可達(dá)ROM的64KB空間。例如:在程序存儲(chǔ)器中,數(shù)據(jù)內(nèi)容為1010H:02H1011H:04H1012H:06H1013H:08H執(zhí)行程序1000H:MOVA,#0DH;A←#0DH,偏移量1002H:MOVCA,@A+PC;A←(0DH+1003H)1003H:MOVR0,A;R0←(A)結(jié)果為(A)=02H,(R0)=02H,(PC)=1004H
又如:在程序存儲(chǔ)器中,數(shù)據(jù)內(nèi)容為7010H:02H7011H:04H7012H:06H7013H:08H執(zhí)行程序1000H:MOVA,#10H;A←#10H,偏移量1002H:MOVDPTR,#7000H;DPTR←7000H1003H:MOVCA,@A+DPTR;A←(10H+7000H)
結(jié)果為(A)=02H8.?dāng)?shù)據(jù)交換l
字節(jié)交換XCHA,Rn ;A<=>Rn,n=0~7XCHA,direct ;A<=>(direct)XCHA,@Ri ;A<=>(Ri),i=0、1l
半字節(jié)交換XCHDA,@Ri ;A0~3<=>(Ri)0~3低4位互換,高4位不變。SWAPA ;A0~3<=>A4~7(高低兩半字節(jié)交換)注:上述交換指令的目的操作數(shù)均為累加器A。例:若(R0)=50H,(A)=3DH,(50H)=89H,執(zhí)行指令“XCHA,@R0”后,(A)=89H,(50H)=3DH。例:若(R0)=50H,(A)=3DH,(50H)=89H,執(zhí)行指令“XCHDA,@R0”后,(A)=39H,(50H)=8DH。例:若(A)=3DH,執(zhí)行指令“SWAPA”后,(A)=D3H。9.堆棧操作所謂堆棧是在片內(nèi)RAM中按“先進(jìn)后出”或“后進(jìn)先出”原則設(shè)置的專用存儲(chǔ)區(qū)。數(shù)據(jù)的進(jìn)棧出棧由指針SP統(tǒng)一管理。堆棧的操作有如下兩條專用指令:
PUSHdirect;SP←(SP)+1,(SP)←(direct)POPdirect;direct←((SP)),SP←(SP)-1PUSH是進(jìn)棧(或稱為壓入操作)指令。指令執(zhí)行過(guò)程如圖3-7所示。
POP是出棧(或稱為彈出操作)指令。指令執(zhí)行過(guò)程如圖3-8所示例如:指令PUSH60H,(60H)=26H,具體執(zhí)行過(guò)程:
①先將堆棧指針SP的內(nèi)容0FH加1,指向原棧頂上面的一個(gè)單元,此時(shí)(SP)=10H;②然后將指令指定的直接尋址單元60H中的數(shù)據(jù)26H送到新棧頂單元中。例如:指令POP50H,具體執(zhí)行過(guò)程:①先將SP所指單元0FH(棧頂?shù)刂罚┲械臄?shù)據(jù)49H彈出,送到指定的片內(nèi)RAM單元50H,(50H)=49H;②然后SP←(SP)-1,(SP)=0EH,SP指向新的棧頂單元。使用數(shù)據(jù)傳送類指令注意事項(xiàng):(1)一條指令中不能同時(shí)出現(xiàn)兩個(gè)工作寄存器。如以下指令非法:MOVR1,R2;MOVR2,@R0(2)訪問(wèn)SFR只能直接尋址(個(gè)別也可用寄存器尋址),不能用寄存器間接尋址。如用以下指令訪問(wèn)P0口無(wú)效(P0口的直接地址為80H):MOVR0,#80H; MOVA,@R0(3)片外數(shù)據(jù)存儲(chǔ)器、程序存儲(chǔ)器不能直接尋址。下列為非法指令:MOVXA,1000H;MOVX1100H,1200HMOVCA,2000H(4)只有指令表中存在的指令形式才有對(duì)應(yīng)的機(jī)器指令代碼,CPU才能執(zhí)行。編程時(shí),不能隨意發(fā)明創(chuàng)造指令,如以下指令非法:XCH50H,52H;MOV49H,@R2;MOVX@DPTR,50H【例】將片內(nèi)RAM30H單元與40H單元中的內(nèi)容互換。方法1(直接地址傳送法):MOV 31H,30HMOV 30H,40HMOV 40H,31HSJMP $方法2(間接地址傳送法):MOV R
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 跨學(xué)科視角下的小學(xué)生綜合計(jì)算能力培養(yǎng)策略研究總結(jié)
- DB6528T 210-2024板椒聯(lián)合收獲機(jī)作業(yè)技術(shù)規(guī)程
- DB6103T 82-2025夏大豆擴(kuò)行縮株栽培技術(shù)規(guī)范
- 專業(yè)常年法律顧問(wèn)聘任合同模板
- 個(gè)人投資入股合作合同協(xié)議
- 專利許可合同
- 買賣合同終止及賠償協(xié)議
- 專兼職律師服務(wù)合同格式范本
- 個(gè)人咖啡店轉(zhuǎn)讓合同范本
- 產(chǎn)品設(shè)計(jì)與制造合同范本
- 2024年浙江省公務(wù)員錄用考試《行測(cè)》題(A類)
- 2024版《安全生產(chǎn)法》考試題庫(kù)附答案(共90題)
- 疥瘡病人的護(hù)理
- 2024年江西省中考英語(yǔ)試題含解析
- 公務(wù)員2012年國(guó)考《申論》真題卷及答案(地市級(jí))
- 新員工三級(jí)安全教育考試試題參考答案
- 35kV輸變電工程(變電站、輸配電線路建設(shè))技術(shù)方案
- 數(shù)學(xué)史簡(jiǎn)介課件可編輯全文
- 化學(xué)廢水水池清理施工方案
- 離婚協(xié)議書(shū)常用范本2024年
- 中學(xué)安全辦2024-2025學(xué)年工作計(jì)劃
評(píng)論
0/150
提交評(píng)論