![微機原理ch03指令第三次課_第1頁](http://file4.renrendoc.com/view/0ae06fdc3fbee6b983341e0e723d0547/0ae06fdc3fbee6b983341e0e723d05471.gif)
![微機原理ch03指令第三次課_第2頁](http://file4.renrendoc.com/view/0ae06fdc3fbee6b983341e0e723d0547/0ae06fdc3fbee6b983341e0e723d05472.gif)
![微機原理ch03指令第三次課_第3頁](http://file4.renrendoc.com/view/0ae06fdc3fbee6b983341e0e723d0547/0ae06fdc3fbee6b983341e0e723d05473.gif)
![微機原理ch03指令第三次課_第4頁](http://file4.renrendoc.com/view/0ae06fdc3fbee6b983341e0e723d0547/0ae06fdc3fbee6b983341e0e723d05474.gif)
![微機原理ch03指令第三次課_第5頁](http://file4.renrendoc.com/view/0ae06fdc3fbee6b983341e0e723d0547/0ae06fdc3fbee6b983341e0e723d05475.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
知識回顧:數(shù)據(jù)傳送類MOV指令的小尋尋尋A立即寄存知識回顧:數(shù)據(jù)傳送類A與片外RAM的傳遞指令
PUSHPOPMOVXA,@DPTRMOVX@DPTR,AMOVCA,@A+DPTRXCHA,RnXCHDSWAP3第三章指令指令指令系統(tǒng)的MCS-51指令系統(tǒng)分類4二.算術(shù)操作加、減、乘、除、加1和減1程序狀態(tài)字D7D6D5D4D3D2D1F0P5ADD加法指令(Addition,4條ADDA,(A)+(Rn)ADDA,ADDA,ADDA,(A)+#dataD7有進位時,Cy置D7,D6中1個有進位而另1沒有,OV置6例:加法指設(shè)(A)=0C3HADDA,7帶進位的加法指令(AddwithADDCA,(A)+(Rn)+CyADDCA,(A)+(direct)+CyADDCA,(A)+((Ri))+CyADDCA,(A)+#data+Cy8帶進位位的加法指令(4條功能:51單片機是一種8位機,只能做8算,運算的范圍只有0~255,這在實際工作中是的,因此就要進行擴 9000100000110001100001010010000010000
PSW中的CY位了。換言之,CY就相當(dāng)于是100H然后再做10H30HCY,結(jié)果是41H,所以設(shè):1067H存在R1R030A0H存在R3R2中,計算;R0+R2→A和;R1+R3+CY→A和INC增1INCINCINC(direct)+1INCINC(DPTR)+1DA十進制調(diào)整指(Decimal跟DAA指令,對結(jié)果進行十進制調(diào)整。BCD碼中無1111編結(jié)果11,正確結(jié)果為DA指若(A)3-0>9或AC=1(A)(A)若(A)7-4>9或Cy=1(A)(A)例如:(A)=56H,(R5)=67H,看作縮BCD碼,進行BCD碼加ADDA,
0101
DA
DA
0110 1011+)0110 10010
帶借位的減法指令(SubtractwithSUBBA,SUBBA,SUBBA,(A)-((Ri))-SUBBA,(A)-#data-D7有借位時,Cy置D3有借位時,Ac置D7,D6中1個有進位而另1沒有,OV置例SUBBA,R2DEC減1指令DECDEC(Rn)-DECDEC((Ri))-1不影響PSW乘法和除乘法MULA×B除法指令DIVA/B商:A,余 乘法指令(1條MUL A=4EH,B=5DH,執(zhí)行指令MULAB后,的則是56HOV=P=除法指令(1條DIV ;A÷B的商→A,余數(shù)如:A=11H,B=04H,執(zhí)行指令DIVAB后,CY=P=A累加A累加第三章指令指令指令系統(tǒng)的MCS-51指令系統(tǒng)分類邏輯運算類單單字節(jié)邏輯操作數(shù)運雙字節(jié)邏輯操作數(shù)運單字節(jié)邏輯操作數(shù)運算累加器累加器A清“零”指令累加器A取反指令累加器A循環(huán)左移指令累加器A連同進位位循環(huán)左移指令累加器A循環(huán)右移指令累加器A連同進位位循環(huán)右移指令累加器A清“零CLR ;CLR;(A)累加器A清CLRA;CLRSUBBA,累加器A取反CPL ;CPLMOVA,CPL累加器A循環(huán)左RL ;RL(Rotate–RLA;MOVA,RL 累加器A連同進位位循環(huán)左移指RLCA;RLC(RotateLeftthroughtheRLCRLC
對RLC指令,在CY=0時,RLC相當(dāng)于乘以累加器A循環(huán)右RR ;RR(RotateRR 累加器A連同進位位循環(huán)右移指RRC
;RRC(RotateRightthroughtheRRCRRC
對RRC指令,在CY=0時,RRC相當(dāng)于除以雙字節(jié)邏輯操作數(shù)運算邏輯邏輯“或”指邏輯異或”指邏輯“與”運算指令A(yù)NLAndLogic指令助記符為ANL,用符號“∧”指令功能是將目的地址單元中的數(shù)和源地址單元中的數(shù)按“位”相“與”,其結(jié)果放回目的地址單例:設(shè)(A)=A3H(10100011B),(R0)=AAH(10101010B)ANLANLP1=F0H,P1.7至P1.4位狀態(tài)不變,P1.3至P1.0位被清除邏輯“與”運算指令用做清除 某些位小結(jié)ANLA,ANLA,
;A指令助記符為ORL,用符號“∨”表示
;(A)←(A) direct,#data指令功能是將目的地址單元中的數(shù)和源地址單元中的數(shù)按“位相“或”,其結(jié)果放回目的地址單例:設(shè)(A)=0A3H ORLA,(A)=E7H(11101。小結(jié)ORLA,ORLA,
;A=不邏輯“異或”運算指令XRL(Exclusive-OrLogic指令助記符為XRL,用符號“⊕”表示,其運算規(guī)則0⊕0=0, 0⊕1=1,
direct,#data“位”例:設(shè)(A)=0A3H(10100011B),(R0)=045H(01000l0lB)XRL1010001 01000101110011邏輯“異或”。小結(jié)XRLA,#FFHXRLA,#00H;A不 A累加尋《微機原理及應(yīng)用》課(A)=7AH, 內(nèi)部RAM(30H)=0A5H,分析下列ANLA,ORL30H,XRLA,CPL
第三章指令指令指令系統(tǒng)的MCS-51指令系統(tǒng)分類控制轉(zhuǎn)移類指令(17條()。包括以無條件轉(zhuǎn)移和條相對轉(zhuǎn)移和絕對長轉(zhuǎn)移調(diào)用與短轉(zhuǎn)移類指令:AJMP長轉(zhuǎn)移類指令:LJMP相對轉(zhuǎn)移指令:SJMP間接轉(zhuǎn)移指令:JMP控制轉(zhuǎn)移類指令(17條無條件轉(zhuǎn)移指令A(yù)JMP(AbsoluteJump) 器《微機原理及應(yīng)用》課PC的跳轉(zhuǎn)范圍:PCPC的跳轉(zhuǎn)范圍:PC當(dāng)前值在同一個2KBPC15PC14PC13PC12PC110000000000PC15PC14PC13PC12PC111111111111例:假定addr11= B,標號tt的地址為1030H.執(zhí)行指令:tt:AJMPaddr11序轉(zhuǎn)移到地址()去執(zhí)行.解:PC H------0001,0000,0011,0010BPC15110001,0addr11接成16位地址0001,0001,0000,0000B 1100 SJMP實現(xiàn)的程序轉(zhuǎn)移LOOP: ┇SJMP┇長跳轉(zhuǎn)指令LJMP(LongLJMP指令執(zhí)行時把指令的第二和第三字節(jié)分別裝入PC的 和低 目標地址可以在64K程 器地址空間的任何位置《微機原理及應(yīng)用》課長跳轉(zhuǎn)指令例:在ROM0000H單元存放指令: ;(PC)←3000H023000則上電復(fù)位后程序?qū)⑻?000H 間接跳轉(zhuǎn)指令 由A中8位無符號數(shù)與DPTR的16位數(shù)內(nèi)容以DPTR內(nèi)容作為基址,A的內(nèi)容作變址給A賦予不同的值,即可實現(xiàn)程序的多無條件轉(zhuǎn)移類指令A(yù)JMP,LJMP,SJMP,JMP跳轉(zhuǎn)的范圍短轉(zhuǎn)移類指令:AJMP長轉(zhuǎn)移類指令:LJMP相對轉(zhuǎn)移指令:SJMP指令構(gòu)成不AJMP、LJMP后跟的是絕對地而SJMP后跟的是相對地址
轉(zhuǎn)移范圍-,原則上,所有用SJMP或AJMP的地方都可用LJMP2JMP與前三條指令相比有所間接轉(zhuǎn)移指令:JMP。指令對A、DPTR和標志位均無影條件轉(zhuǎn)移 rel(JumpifAis JNZrel(JumpifAisNot
比較不相等轉(zhuǎn)移指令CJNE:CompareX1toX2,andJumpifNot
A,direct,relA,#data,relRn,#data,rel@Ri,#data,比較前面兩個操作數(shù)的大小,如果它們的值不相等則(整數(shù)),則進位標志位置1“0”。比較不相等轉(zhuǎn)移指令減1不為0轉(zhuǎn)移指令DJNZ(DecrementRegisterandJumpifNot把減1與條件轉(zhuǎn)移兩種 Rn, Rn←(Rn)-1若(Rn)=0,則PC否則PC direct,若(direct)=0,則PC否則PC允許程序員把寄存器Rn或內(nèi)部RAM的direct單元用作程序循環(huán)計數(shù)器。主要用于控制程序循環(huán)。以減1后是否為“0”作短調(diào)用指令A(yù)CALL(Absolutesubroutine addrll或ACALLPC←SP←(SP)+1,(SP)←(PCSP←(SP)+1,(SP)←(PCPC10~0←
;標號表示子程序首當(dāng)前PC壓子程序首地址送PC,實現(xiàn)轉(zhuǎn)長調(diào)用指令LCALL(Longsubroutine addr16LCALLPC←(PC)+3SP←(SP)+1,(SP)←(PCSP←(SP)+1,(SP)←(PCPC←addr功能:在主程序中調(diào)用子
當(dāng)前PC子程序首地址送PC兩者的區(qū)別:對短調(diào)用指令,被調(diào)用子程 地址必須與調(diào)用 《微機原理及應(yīng)用》課(SP)=30H,PC)=3000H,標號為SUB1子程序首址在2500H執(zhí)行指令:3000H:LCALL則:(SP)= (31H)=
(PC)=2500H,(32H)= PC←(PC)+3PC←(PC)+3SP←(SP)+1,(SP)←(PCSP←(SP)+1,(SP)←
addraddr《微機原理及應(yīng)用》課返回子程序返回指令RET PC15~8←((SP)),SP← PC7~0←((SP)),SP←
中斷返回指令RETI(Returnfrom PC15~8←((SP)),SP←PC7~0←((SP)),SP←
給PC,實現(xiàn)返回除了實現(xiàn)程序返回外,清除中斷響應(yīng)的 《微機原理及應(yīng)用》課空操作指令NOP(No常用于程序中等PC(PC) 第三章指令指令指令系統(tǒng)的MCS-51指令系統(tǒng)分類《微機原理及應(yīng)用》課位操作指MCS-51單片機的硬件結(jié)構(gòu)中,有一個位處理器(又稱布爾處器),控制程序轉(zhuǎn)移等。位地址位操作區(qū):內(nèi)部RAM的20H-2FH單元,128個位單元(位地址空間可位尋址的特殊功能寄存器:字節(jié)地址均可被8整除,如A累加器,在進行位處理CY用作“位累加器” 《微機原理及應(yīng)用》課位操作指數(shù)據(jù)位MOVC,bit;CMOVbit,C;bit實現(xiàn)位累加器(CY)和其它位地址之間的數(shù)據(jù)位變量CLRCPL
;Cy
CLRCPL
;bitSETBC; SETBbit; 《微機原理及應(yīng)用》課 ANLC,/bit邏輯或
;C(C)∧;C(C)∧ORLC,bit ;C(C)∨(bit)ORLC,/ ;C(C)∨(/bit)注意:指定的位地址中的值本身并不發(fā) 《微機原理及應(yīng)用》課判布爾累加器C轉(zhuǎn)移指判位變量轉(zhuǎn)移判位變量 轉(zhuǎn)移指判布爾累加器C轉(zhuǎn)移JC Jumpifcarryisset),rel:8位相對偏移JNC ;(Jumpifcarryisnot 《微機原理及應(yīng)用》課JBbit, ;(JumpifdirectbitisJNBbit, ;(Jumpifdirectbitisnot判位變量 轉(zhuǎn)移指 JBCbit,rel ;(Jumpifdirectbitisset&clearbit) 一、助記符號 方表格列英文還功能模
CJNE-CompareX1X2andjumpifnot
RLC-RotateLeftthroughthe3功能模 單片機的44按功能相似原則為2~3組。這樣,化整為零,各個擊破,實現(xiàn)快 MOVMOVC程 MOVXANLORL
ADDSUBBLCALLRET 希望能起到拋磚引玉的作用,在學(xué)習(xí)單片機的過程中能找到適合自己的方法來。但是,有了例判斷以下指令的正誤。MOVMOVINCDECCLR答(1)錯誤,寄存器間接尋址只允許使用R0和Rl兩個寄存器。MOVMOVMOVR0,#0D0HMOVA,@R0POPACC(3)不行,因為SFR區(qū)只能用直接尋址不能用間接尋例欲將外部數(shù)據(jù) MOVXMOVMOVXA,@MOVP2,#30HMOVR0,#57HMOVXA,@R0MOVP2,#30HMOVR2、#57HMOVXA,@R2答(1)不行,MCS—51指令系統(tǒng)中沒有該指令。(2))可以。)不行。間接尋址指令,只允許使用和間接尋址。RAM中2100H單元內(nèi)容的奇MOVDPTR,#2100HMOVXA,@DPTRXRLA, MOVX@DPTR,ANLA,#FFH;A不變ANLA,#00H;A=0ORLAFFHA=0FFHORLA,#00H;A=不變XRLA,#FFH;A=AXRLA,#00H;A不變傳送類指令MOV、MOVX、MOVC等,其區(qū)別?怎樣正確使用MOV類指令 片內(nèi)的數(shù) 區(qū)(即內(nèi)部RAM和SFR區(qū)片內(nèi)RAM區(qū)的各字節(jié)單元,也可 位單請注意這些單元地址都只有8位而非16MOVX類指令專門用 片外64KB的數(shù) 通常與16位DPTR搭配使用,MOVXA,@DPTR和MOVX@DPTR,還可以借用P2口鎖存器和Ri寄存器拼湊的16位地址 A,@RiMOVX@Ri,A,隱含指定P2鎖存器內(nèi)容為高8位數(shù)據(jù)地MOVC類指令專門用 片外64K的程 空對于這個空間,用戶雖然不能隨意改寫(根本不提供寫指令 A,@A+DPTR和MOVCA,@A+PC怎樣才能避免出 指令剛開始編程時,初學(xué)者常常會寫出一 指令,匯編時語錯誤一大堆。其實歸納起來,這些語法錯誤無非是兩①指令表達不合MOV這種錯誤容易檢查出來,只要大家從邏輯思維的角度仔細想想,就能
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度生態(tài)環(huán)保型護墻板設(shè)計與施工合同
- 2025年度會議現(xiàn)場攝影攝像及直播服務(wù)合同
- 2025版消防設(shè)備維修及更換勞務(wù)承包合同3篇
- 2025年度廣告公司室內(nèi)外裝修一體化合同正本
- 2025年度商業(yè)發(fā)布會場地租賃合同范本
- 2025年度網(wǎng)絡(luò)信息安全服務(wù)合同價款支付與保密條款
- 2025年度城市出租車公司司機勞動合同規(guī)范范本3篇
- 2025年度教育科技公司在線教育平臺借款合同范本
- 2025版淘寶商家與消費者會員積分兌換合同3篇
- 二零二五年度學(xué)校場地設(shè)施維護與租賃合同3篇
- 2017年江蘇南京中考滿分作文《無情歲月有味詩》5
- 2024-2030年中國智慧水務(wù)行業(yè)應(yīng)用需求分析發(fā)展規(guī)劃研究報告
- 2024年中國南水北調(diào)集團新能源投資限公司抽水蓄能項目崗位公開招聘高頻考題難、易錯點模擬試題(共500題)附帶答案詳解
- 中國2型糖尿病運動治療指南 (2024版)
- 基礎(chǔ)構(gòu)成設(shè)計全套教學(xué)課件
- 城市道路交通安全評價標準 DG-TJ08-2407-2022
- 統(tǒng)編版高中政治選擇性必修2《法律與生活》知識點復(fù)習(xí)提綱詳細版
- 急腹癥的診斷思路
- 2024小說推文行業(yè)白皮書
- 研究性成果及創(chuàng)新性成果怎么寫(通用6篇)
- 特殊感染手術(shù)管理考試試題及答案
評論
0/150
提交評論