版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第三章80C51微控制器指令系統(tǒng)(2),3.3.2算術(shù)運(yùn)算指令,2 .減法命令減法類命令共分為8個,2個組。包括4個帶借用的減法指令和4個減法1指令。(1)借用減命令助記符為SUBB,4茄子命令為命令機(jī)械代碼格式操作SUBB A,Rn1001 1rrr (A)-(Rn)-CY A SUBB A,direct 1001 0101(A)ri 1001如果需要,可以在發(fā)出SUBB命令之前使用“CLR C”命令將CY位清空為零。進(jìn)位減法主要用于多位元組減法計(jì)算,在低位元組高位元組產(chǎn)生借用時,CY必須設(shè)定1,在牙齒情況下,必須對高位元組運(yùn)算使用借方減法指令。無、3.3.2算術(shù)運(yùn)算類別指令,例如,計(jì)算兩個
2、16位數(shù)的差值。減少量為9876H,低字節(jié)為32H,高字節(jié)為33H。損耗為6789H,低字節(jié)存儲在30H單元中,高字節(jié)存儲在31H單元中。將結(jié)果的低字節(jié)和高字節(jié)分別放在單元34H和35H中。3.3.2算術(shù)運(yùn)算類命令,第一步:減去低字節(jié),借用最高位,CY位置1。第二步:減去高字節(jié)。由于減法的高字節(jié)低的字節(jié)借用了1,因此高字節(jié)應(yīng)該減少1。借用時cy放1,因此等于減去CY。9876h,1001 1000 0111 0110 0111 1000 1001,6789h,0011 0000 1110 1101,3 0 E D,因此,借用減法都用于高字節(jié)減法,低字節(jié)減法時如果沒有借用減法,則必須先將CY比特
3、清除為零,3.3.2算術(shù)運(yùn)算類命令,MOV A,32H將減少的低字節(jié)發(fā)送到累加器,clr c。低字節(jié)不借用就減去;CY蛙泳0、SUBB A、30H、MOV 34H、A;將低字節(jié)的計(jì)算結(jié)果發(fā)送到34H,MOV A,33H。將相減的高字節(jié)發(fā)送到累加器,SUBB A,31H。減去借用,MOV 35H,a;將高字節(jié)的計(jì)算結(jié)果發(fā)送到34H。具體步驟:3.3.2算術(shù)運(yùn)算類命令,借用減命令影響PSW的位:CY位:最高位(第7位)在借用時為1,借用時為0牙齒。AC位:第三位借用位置1,沒有借用時為0。P位:A的數(shù)字可能會更改,P也可能會更改。AC=1,3.3.2算術(shù)運(yùn)算類命令,OV位:-嗯?-嗯?對于微控制器
4、算術(shù)運(yùn)算類命令,加法和減法可以執(zhí)行有符號操作,其他命令只能執(zhí)行無符號操作數(shù)。例如(-68H)-76H=?-68,76,3.3.2算術(shù)運(yùn)算類命令,概括地說,在有符號加法和減法運(yùn)算中,如果第7位(符號位)更改,結(jié)果將出錯,因此使用OV=1表示錯誤。加法和減法時,不能分辨是無符號數(shù)字還是有符號數(shù)字。所以在做無符號數(shù)的加減運(yùn)算中,OV位有時也發(fā)生變化,此時我們可以忽略O(shè)V。9878H-5686H,3.3.2算術(shù)運(yùn)算類別指令,(2)減去1指令助憶鍵DEC以使用指令機(jī)器代碼格式DEC rn 0001 RRR(rn)-1 rn DEC direct 0001 0101(direct),例如,假設(shè)A=00H,
5、DEC A,A=FFH,PSW你們都保持不變。SUBB A、#01H、A=FFH、CY=1、例如A=;3.3.2算術(shù)運(yùn)算類命令,3 .乘法命令,乘法命令的助記符為MUL,只有一個指令。命令機(jī)器代碼格式操作MULAB 1010 0100 (A) (B)、A07和B815。牙齒命令的功能是將累加器A和寄存器B的兩個8位無符號計(jì)數(shù)相乘,將16位乘積的低8位字節(jié)放入A,將高8位字節(jié)放入B。乘法命令不影響CY位。CY總是影響OV位:0,3.3.2算術(shù)運(yùn)算類命令,乘法命令。OV=1,表示乘積大于8位。a不能再放了。必須將高字節(jié)放在b中。OV=0,表示乘積小于或等于8位數(shù)。a完全可以放下。此時,B等于0。示
6、例:(A)=4EH,(B)=5DH是mulab,b a,3.3.2算術(shù)運(yùn)算類命令,4。除法命令、除法命令的助記符為DIV,只有1。命令機(jī)器代碼格式操作DIV AB 1000 0100 (A)(B)、商A、剩馀B。牙齒命令的功能是將A除以B。a和B的內(nèi)容都是8位無符號整數(shù)。得到的份額在A,剩下的在B。分割命令不影響CY位。CY始終表示當(dāng),0,除數(shù)b為0時,a的結(jié)果不確定,并且OV設(shè)置為1,無法執(zhí)行除法。3.3.3邏輯運(yùn)算符類命令,包括、and、or、xor、清除、反轉(zhuǎn)、移位等操作。這些指令的操作數(shù)都是8位,共25個指令。參與運(yùn)算的操作數(shù)可分為兩類茄子:單操作數(shù)邏輯運(yùn)算和雙操作數(shù)邏輯運(yùn)算。1 .命
7、令的操作對象(如“邏輯運(yùn)算符單個操作對象”命令)共有7個:清理0、反轉(zhuǎn)、循環(huán)左移、舍入循環(huán)左移、循環(huán)右移、舍入循環(huán)右移、舍入循環(huán)右移和半字節(jié)更換命令。累加器A、3.3.3邏輯運(yùn)算符類指令、(1)累加器清理0指令、指令機(jī)器代碼格式操作CLRA110 0100a、清除累加器A。牙齒操作不影響標(biāo)志位。(2)累加器執(zhí)行逆指令,指令機(jī)器代碼格式操作cpla 110100(A)A,累加器A的內(nèi)容返回比特,并放入A。牙齒操作不影響標(biāo)志位。3.3.3邏輯運(yùn)算符類命令,(3)循環(huán)右移命令,命令機(jī)器代碼格式操作RR A 0000 0011,將累加器的內(nèi)容向右移動一位到位循環(huán),并將A 0的內(nèi)容移動到a7。牙齒操作不
8、影響標(biāo)志位。,(4)循環(huán)左移命令,命令機(jī)器代碼格式操作RL A 0010 0011,將累加器的內(nèi)容向左移動一位作為位循環(huán),a7的內(nèi)容移動到A 0,牙齒操作不影響標(biāo)記位。、3.3.3邏輯運(yùn)算符類命令,(5)舍入循環(huán)右移命令,命令機(jī)器代碼格式操作RRC A 0001 0011,累加器A的內(nèi)容和舍入位一起向右移一步,A 0移至舍入位CY,CY的內(nèi)容移至a7。(6)使用舍入循環(huán)左移命令、操作命令機(jī)器代碼格式RLC A 0011 0011、將累加器A的內(nèi)容和舍入位左移一位,a7將舍入位CY移至A 0,CY的內(nèi)容移至A0。通常使用RLC命令執(zhí)行累加器A乘以2操作。cy,cy,3.3.3邏輯運(yùn)算符類命令,(
9、7)累加器半字節(jié)更換命令,命令機(jī)器代碼格式操作SWAP A 1100 0100,牙齒命令的功能是累加器A的低半字節(jié)(a3a0雙操作數(shù)邏輯運(yùn)算符命令、雙操作數(shù)邏輯運(yùn)算符命令包括ANL(邏輯與)、ORL(邏輯,第一個操作數(shù):A direct第二個操作數(shù):arn direct # datari,)對于并行端口操作,為“讀取和復(fù)蓋”。操作不影響標(biāo)志位。,雙操作數(shù)邏輯運(yùn)算符命令特征:(1)邏輯“and”操作命令組命令的助記符為ANL,共6個命令:ANL A,Rn;(a) (a) (rn) anl a,direct(a) (a) (direct) anl a,ri;(a)(a)(ri)anl a,# da
10、ta(a) (a) # data anl direct,a;(direct) (direct) (a) anldirect,# data(direct)(direct)#使用data邏輯and運(yùn)算指令清除。3.3.3邏輯運(yùn)算符類命令、(2)邏輯或“計(jì)算命令組的助記符為ORL,共6個命令:ORL A,RN;(a) (a) (rn) ORL a,direct;(a) (a) (direct) ORL a,ri;(a)(a)(ri)ORL a,# data(a) (a) # data ORL direct,a;(direct) (direct) (a) orldirect,# data(direct
11、)(direct)#使用data邏輯or運(yùn)算指令作為位置。3.3.3邏輯運(yùn)算符類命令,(3)邏輯“xor”操作命令組命令的助記符為XRL,共6個命令:xrl a,rn;(a) (a) (rn) xrl a,直接;(a) (a)(直接)xrl a,ri;(a)(a)(ri)xrl a,# data(a) (a) #數(shù)據(jù)xrldirect,a;(direct) (direct) (a) xrldirect,# data (direct) (direct) # data,3.3.3邏輯運(yùn)算符類命令,3.控制傳輸命令共可分為17個。無條件傳輸調(diào)用和返回條件傳輸循環(huán)傳輸null操作命令、3.3.4控制傳
12、輸類命令、1無條件傳輸命令:等命令共4個:SJMP rel ajmp addr 11 ljmp addr 16 jmp a dptr等命令的功能是節(jié)目無條件傳輸、3.3.4控制傳輸類命令、(1命令可以在命令前旋轉(zhuǎn)128 B,也可以在命令后旋轉(zhuǎn)127 B。例如,設(shè)置(PC)=0101H,轉(zhuǎn)入地址標(biāo)記為RELADR的單元0123H,因此,rel=0123H(0101H 2)=20H,3.3.4控制傳輸類命令,執(zhí)行命令SJMP (2)因此,程序的目標(biāo)地址必須在2 KB的范圍內(nèi),包括AJMP命令后第一個命令的第一個字節(jié)。3.3.4控制傳輸類命令,例如設(shè)置(PC)=0456H,標(biāo)簽JMPADR牙齒指向的
13、單元0123H。執(zhí)行命令是AJMP JMPADR執(zhí)行結(jié)果(PC)=0123H,因此程序?qū)⒁?123H為單位切換并運(yùn)行。(3)長傳輸(LJMP)命令:提供由兩個字節(jié)和三個字節(jié)組成的16位地址。因此,節(jié)目轉(zhuǎn)換的目標(biāo)地址可以包含節(jié)目存儲的全部64 KB空間。3.3.4控制傳輸類命令,例如設(shè)置(PC)=0123H,標(biāo)簽JMPADR牙齒指向的單元3456H。運(yùn)行命令是LJMP JMPADR運(yùn)行結(jié)果(PC)=3456H,因此程序以3456H為單位運(yùn)行。(4)間接傳輸(JMP)命令:目標(biāo)地址是累加器A的8位無符號計(jì)數(shù)加上數(shù)據(jù)指針DPTR的內(nèi)容。加法運(yùn)算不會影響累加器A和數(shù)據(jù)指針DPTR的原始內(nèi)容。如果累加結(jié)
14、果大于64 KB,則從節(jié)目內(nèi)存的0地址向下繼續(xù)。3.3.4控制傳輸類命令,設(shè)置(A)=5,(DPTR)=4567H。執(zhí)行命令是JMP A DPTR執(zhí)行結(jié)果(PC)=(A) (DPTR)=4567H 5H=456CH,因此程序以456CH為單位運(yùn)行。2.調(diào)用和返回命令等指令共有四種:ACALL addr11LCALL addr16RETRETI、3.3.4控制傳輸類命令、(1)絕對調(diào)用(ACALL)命令:無條件調(diào)用以addr11開頭的子程序。運(yùn)行時,在PC上添加2以獲得以下命令的地址,將牙齒16位地址推送到堆棧(PCL,PCH),然后在堆棧指針上添加2。然后,命令提供的11位目標(biāo)地址發(fā)送到PC10PC0,PC15PC11的值保持不變,程序切換到子程序的第一個地址運(yùn)行。目標(biāo)地址由指令1字節(jié)高3位和指令2字節(jié)組成。因此,調(diào)用的子例程的第一個地址必須與ACAL
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026江蘇泰州市興化市人才儲備中心招募見習(xí)人員備考題庫(第1號)及答案詳解參考
- 2026廣東佛山市順德區(qū)樂從鎮(zhèn)覺培幼兒園招聘帶班教師及后勤人員6人備考題庫有答案詳解
- 2025年12月廣東深圳市公辦中小學(xué)面向2026年應(yīng)屆畢業(yè)生招聘教師888人備考題庫及1套完整答案詳解
- 2025廣西桂林電子科技大學(xué)第二批教職人員控制數(shù)工作人員招聘32人備考題庫及答案詳解(新)
- 2025重慶水利電力職業(yè)技術(shù)學(xué)院公開招聘合同工備考題庫及完整答案詳解一套
- 2025年12月重慶市榮昌區(qū)人民醫(yī)院感染性疾病科信息錄入員、藥劑科靜配中心人員招聘2人備考題庫及完整答案詳解一套
- 2026廣東汕頭市澄海區(qū)教育系統(tǒng)赴華南師范大學(xué)現(xiàn)場招聘新教師20人備考題庫及答案詳解(考點(diǎn)梳理)
- 2026年西北工業(yè)大學(xué)國際合作處招聘備考題庫及答案詳解參考
- 企業(yè)市場分析與競爭策略(標(biāo)準(zhǔn)版)
- 服裝生產(chǎn)質(zhì)量檢測與控制手冊(標(biāo)準(zhǔn)版)
- 兒童心律失常診療指南(2025年版)
- 北京通州產(chǎn)業(yè)服務(wù)有限公司招聘備考題庫必考題
- 2026南水北調(diào)東線山東干線有限責(zé)任公司人才招聘8人筆試模擬試題及答案解析
- 伊利實(shí)業(yè)集團(tuán)招聘筆試題庫2026
- 2026年基金從業(yè)資格證考試題庫500道含答案(完整版)
- 動量守恒定律(教學(xué)設(shè)計(jì))-2025-2026學(xué)年高二物理上冊人教版選擇性必修第一冊
- 網(wǎng)絡(luò)素養(yǎng)與自律主題班會
- 波形護(hù)欄工程施工組織設(shè)計(jì)方案
- 非靜脈曲張性上消化道出血管理指南解讀課件
- 內(nèi)窺鏡護(hù)理不良事件分析與防范措施
- 糖代謝紊亂生物化學(xué)檢驗(yàn)
評論
0/150
提交評論