




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
概述
機(jī)器語(yǔ)言(指令的二進(jìn)制編碼表示)
但機(jī)器語(yǔ)言具有程序長(zhǎng)、不易書寫、難于閱讀和調(diào)試、容易出錯(cuò)等缺點(diǎn),那么使用符號(hào)指令就顯得十分必要,通常把表示指令的符號(hào)稱之為助記符。匯編語(yǔ)言而以助記符表示的指令就是計(jì)算機(jī)的匯編語(yǔ)言.一條指令通常由兩部分組成,即操作碼和操作數(shù)。操作碼用來(lái)規(guī)定指令進(jìn)行什么操作,而操作數(shù)則表示指令的操作的對(duì)象。單片機(jī)的指令是不定長(zhǎng)的,在MCS-51指令系統(tǒng)中,有一字節(jié)、二字節(jié)、三字節(jié)等不同長(zhǎng)度的指令.11.2指令分類MCS-51單片機(jī)指令系統(tǒng)共有指令111條,分為五大類數(shù)據(jù)傳送類:29條算術(shù)運(yùn)算類:24條邏輯運(yùn)算類:24條控制轉(zhuǎn)移類:17條位操作類:17條11.3尋址方式尋址的“址”是指操作數(shù)所在的單元地址。因此尋址就是如何確定操作數(shù)單元地址的問題。共有七種尋址方式寄存器尋址MOVA,R2直接尋址MOVA,3AH立即尋址MOVA,#3AH寄存器間接尋址MOVA,@R0變址尋址MOVCA,@A+DPTR相對(duì)尋址JC03H位尋址SETB3DH1立即尋址指令碼中直接含有所需地址的操作數(shù)MOVA,#30HMOVDPTR,#3000H注意:#是唯一區(qū)別與地址的標(biāo)志。2直接尋址指令碼中含有操作數(shù)的地址,機(jī)器根據(jù)地址找到操作數(shù)MOVA,30H注意:若直接尋址的地址是SFR中的某一個(gè)時(shí),可用名稱符號(hào)MOVA,TH0MOVA,8CH3寄存器尋址所需的操作數(shù)在某個(gè)工作寄存器中(R0~R7)INCR0注意:指令表中INCRn,n取0~74寄存器間接尋址指令碼中含有操作數(shù)地址的寄存器號(hào)。實(shí)際上是二次尋址間接尋址采用@Ri或@DPTR,@是區(qū)別寄存器尋址的標(biāo)記若(RO)=30H,(30H)=0FFHMOVA,R0MOVA,@R05相對(duì)尋址指令碼中含有相對(duì)地址的偏移量MOVA,40HADDA,#30HSJMPSOUT;PC=PC+2+rel。;。。SOUT:MOV50H,ASJMPrel(PC)=(PC)+2+rel例:835AHSJMP35H目的地址=835AH+02H+35H=8391H例:835AHSJMPE7H目的地址=835AH+02H-19H=8343H-19H=-00011001=11100111(補(bǔ)碼)6變址尋址基地址寄存器和偏移量MOVCA,@A+PCMOVCA,@A+DPTR注意:變址尋址區(qū)是程序存儲(chǔ)器而不是數(shù)據(jù)存儲(chǔ)器。執(zhí)行前,應(yīng)預(yù)先在DPTR和A中存放地址,為指令執(zhí)行提供條件。7位尋址指令中含有位地址位地址和字節(jié)地址的區(qū)分通過指令區(qū)分:MOVA,20HMOVC,20H可供位尋址的區(qū)域片內(nèi)RAM的20H~2FH為位尋址空間(00~7FH)某些SFR:地址能被8整除的SFR,共11個(gè)。位地址的表示方法MOVC,ACC.7MOV20H,CMOV24H.0,C11.4指令系統(tǒng)MCS-51匯編語(yǔ)言是用42種操作碼助記符描述33種操作功能,一種功能可能有幾種助記符,與尋址方式結(jié)合共產(chǎn)生111條指令。數(shù)據(jù)傳送類:29條算術(shù)運(yùn)算類:24條邏輯運(yùn)算類:24條控制轉(zhuǎn)移類:17條位操作類:17條11.5數(shù)據(jù)傳送類29條傳送數(shù)據(jù)可在ACC,R0~R7,內(nèi)部RAM,外部RAM間進(jìn)行,其中A,R0~R7的操作最多傳送類指令不影響PSW(除P位)
數(shù)據(jù)傳送指令表
續(xù)表例1已知(70H)=60H,(60H)=20H,分析如下程序.MOVR0,#70H;(R0)=#70HMOVA,@R0;(A)=#60HMOVR1,A;(R1)=#60HMOV40H,@R1;(40H)=#20HMOV@R0,R1;(60H)=#60H例2查表指令舉例1ORG8000H8000H:MOVA,#40H8002H:MOVCA,@A+PC;(8003H+40H->PC)…;(44H->A)ORG8040HDB41H42H43H44H查表指令舉例2ORG8000H…MOVA,#03HMOVDPTR,#8040HMOVCA,@A+DPTR;A=?(44H)…ORG8040HDB41H42H43H44H例3分析如下程序執(zhí)行完成后A,R0,PC的內(nèi)容.1010H:02H1011H:04H1012H:06H1013H:08H1000H:MOVA,#0DH;0DH->A1002H:MOVCA,@A+PC;(0DH+1003H)->A1003H:MOVR0,A;A->R0A=02H,R0=02H,PC=1004H例4.將累加器A中的低4位數(shù)據(jù)傳送到數(shù)據(jù)存儲(chǔ)器3000H單元中去.
MOVDPTR,#3000HANLA,#0FHMOVX@DPTR,A數(shù)據(jù)傳送類指令小結(jié)內(nèi)部RAM的數(shù)據(jù)傳送方式11.6算術(shù)操作類24條加、減、乘、除、增1、減1影響PSW中的CY、AC、OV、P不帶進(jìn)位加法4帶進(jìn)位加法4帶借位減法4加1指令5減1指令4十進(jìn)制調(diào)整指令1乘除法指令2算術(shù)操作指令
加、減法指令(ADDADDCSUBBINCDEC)無(wú)符號(hào)數(shù)和有符號(hào)數(shù)由用戶自己決定均以ACC作為目的操作數(shù)帶符號(hào)數(shù)運(yùn)算時(shí),必須檢查溢出位OV若進(jìn)行不帶進(jìn)位的減法時(shí),用CLRC,將進(jìn)位位清零即可。DAA為十進(jìn)制調(diào)整指令,緊跟加法指令A(yù)DD或ADDC之后,對(duì)BCD碼加法運(yùn)算進(jìn)行修正.1)BCD碼:0000~10012)計(jì)算機(jī)內(nèi)是4位2進(jìn)制數(shù)是逢16進(jìn)位,不符合十進(jìn)制的要求.3)例如0101+1000=1101不是BCD碼如果1101+0110=00010011則變?yōu)锽CD碼.4)在加法指令后直接加上指令DAA,計(jì)算機(jī)的硬件自動(dòng)進(jìn)行加6運(yùn)算乘除法指令只能進(jìn)行無(wú)符號(hào)的乘除法雖影響OV,但意義不同MULAB;BA,OV=1表示乘積大于FFHDIVAB;A…B,0V=1,B=0,除法無(wú)意義舉例MOVA,#5AHADDA,#6BH0101101001101011(+---------------------11000101CY=?AC=?OV=?11.7邏輯運(yùn)算類24條讀-修改-寫指令對(duì)數(shù)據(jù)進(jìn)行邏輯處理模擬各種硬件電路的邏輯功能邏輯與ANL邏輯或ORL邏輯異或XRL邏輯移位RRRRCRLRLC累加器清零與取反CLRCPL例:A=7AH=01111010,CY=1RLCA11110101=F5H,CY=0,P=0帶進(jìn)位移位和不帶進(jìn)位移位例:M1和M1+1單元存有16位二進(jìn)制數(shù),試編程將其擴(kuò)大二倍程序CLRCMOVR1,#M1MOVA,@R1RLCAMOV@R1,AINCR1MOVA,@R1RLCAMOV@R1,A11.8控制轉(zhuǎn)移指令17條無(wú)條件轉(zhuǎn)移絕對(duì)轉(zhuǎn)移LJMP、AJMP短轉(zhuǎn)移SJMP間接轉(zhuǎn)移JMP@A+DPTR有條件轉(zhuǎn)移JZ、CJNE、DJNZ子程序調(diào)用與返回ACALL、LCALL、RET中斷返回RETI,RET空操作NOP舉例:把從40H單元開始的10個(gè)單元中的內(nèi)容相加.MOVR2,#0AHMOVR0,#40HCLRALOOP:ADDA,@R0INCR0DJNZR2,LOOPMOVSUM,A11.9位操作指令17條位傳送MOVBIT,BIT(錯(cuò)誤)位邏輯操作與ANL、或ORL、取反CPL位條件轉(zhuǎn)移JC、JNC、JB、JNB、JBC位置位,清零(SETB、CLR)例1例1內(nèi)部數(shù)據(jù)存儲(chǔ)器的60H、61H單元中連續(xù)存放著4位BCD碼。試編寫一段程序?qū)⑦@4位BCD碼倒序排列程序MOVR0,#60HMOVR1,#61HMOVA,@R0SWAPAXCHA,@R1SWAPAMOV@R0,A例2已知片內(nèi)RAM50H單元中存放數(shù)值A(chǔ)AH,設(shè)堆棧指針為30H,把此數(shù)值壓入堆棧,然后再?gòu)棾龅?0H單元中.MOVSP,#30H;30H->SPPUSH50H;SP+1->SP,(50H)->(31H)POP40H;(31H)->(40H),SP-1->SP,例3試編寫計(jì)算1234H+0FE7H的程序,將和的高8位存入41H單元,低8位存入40H單元.MOVA,#34H;34H->AADDA,#0E7H;A+E7H->AMOV40H,A;A->(40H)MOVA,#12H;12H->AADDC
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人購(gòu)車合同范本
- 基于能量尺度方法的軟土蠕變特性研究
- 國(guó)際化程度對(duì)企業(yè)創(chuàng)新的影響研究
- 秋游活動(dòng)策劃方案(5篇)
- 出售彩鋼瓦油漆合同范本
- 鎳鈷氫氧化物電極材料的失效機(jī)制及其復(fù)合改性研究
- 心智障礙題材紀(jì)錄片的群像塑造研究
- 中職工業(yè)分析檢驗(yàn)賽項(xiàng)操作競(jìng)賽報(bào)告單-儀器分析
- 社區(qū)備案租房合同范本
- 印刷纖維企業(yè)ESG實(shí)踐與創(chuàng)新戰(zhàn)略研究報(bào)告
- 護(hù)士臨床護(hù)理組長(zhǎng)
- 土建、裝飾、維修改造等零星工程施工組織設(shè)計(jì)技術(shù)標(biāo)
- 高速公路養(yǎng)護(hù)作業(yè)安全培訓(xùn)內(nèi)容
- 《大白菜種植栽培技》課件
- 北京工業(yè)大學(xué)《數(shù)據(jù)挖掘》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年物聯(lián)網(wǎng)安裝調(diào)試員(中級(jí)工)職業(yè)資格鑒定考試題庫(kù)(含答案)
- 標(biāo)準(zhǔn)化機(jī)房改造方案
- 珠海市第三人民醫(yī)院中醫(yī)智能臨床輔助診療系統(tǒng)建設(shè)方案
- 早產(chǎn)臨床診斷與治療指南
- 工程簽證單完整版
- 《義務(wù)教育數(shù)學(xué)課程標(biāo)準(zhǔn)(2022年版)》初中內(nèi)容解讀
評(píng)論
0/150
提交評(píng)論