版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第三章 指令系統(tǒng)
指令系統(tǒng)3/21/202511、加法指令1)不帶進(jìn)位的加法指令A(yù)DD源操作數(shù)均為累加器A中的內(nèi)容,將目的操作數(shù)與A中的內(nèi)容相加,結(jié)果也放在A中。ADDA,Rn
;(A)←(A)+(Rn)ADDA,@Ri
;(A)←(A)+((Ri))ADDA,direct
;(A)←(A)+(direct)ADDA,#data
;(A)←(A)+#data3/21/20253對(duì)標(biāo)志位的影響:D7產(chǎn)生進(jìn)位,則(CY)=1,否則(CY)=0D3產(chǎn)生進(jìn)位,則(AC)=1,否則(AC)=0作為有符號(hào)數(shù),溢出(超出-128~+127)則OV=1,運(yùn)算結(jié)果出錯(cuò),否則OV=0,運(yùn)算結(jié)果正確。結(jié)果A中“1”的個(gè)數(shù)為奇數(shù),則(P)=1,否則(P)=03/21/20254例:設(shè)(A)=84H,(30H)=8DH
ADDA,30H則(A)=11H;(CY)=1;(AC)=1;(OV)=1;(P)=0分析:當(dāng)作為無(wú)符號(hào)數(shù)時(shí):84H=132,8DH=14184H+8DH=273>256則(CY)=1當(dāng)作為有符號(hào)數(shù)時(shí):84H=-124,8DH=-115
其和為-239,超出-128~+127,
故溢出(OV)=1。
事實(shí)上,兩個(gè)負(fù)數(shù)相加,其結(jié)果(A)=11H=17為正數(shù),不合理,必然溢出。3/21/20255例:MOVA,#0B3HMOV20H,#10HMOVR0,#20HADDA,@R0ADDA,R0ADDA,#10H;(A)=0B3H;(20H)=10H;(R0)=20H;(A)=0B3H+10H=0C3H;(A)=0C3H+20H=0E3H;(A)=0E3H+10H=0F3H3/21/20256例:(A)=42H,(R3)=68H,(CY)=1ADDCA,R3結(jié)果:(A)=0ABH(CY)=0(AC)=0(OV)=1(P)=13/21/202583)加1指令
INCA;(A)←(A)+1
INCRn
;(Rn)←(Rn)+1
INCdirect;(direct)←(direct)+1
INC@Ri
;((Ri))←((Ri))+1
INCDPTR;(DPTR)←(DPTR)+1
該指令是唯一的16位運(yùn)算指令
注:除INCA和INCACC影響P標(biāo)志位外,其他均不影響PSW標(biāo)志位。3/21/20259比較INCAADDA,#01H前者不影響標(biāo)志位CY、OV、AC后者影響標(biāo)志位CY、OV、AC前者為1個(gè)字節(jié)后者為2個(gè)字節(jié)3/21/202510(direct)←(direct)∧(A)MOVA,#01H;MOVR0,#20H(Cy)←(Cy)∨(bit)
ORLC,/bit;D7產(chǎn)生進(jìn)位,則(CY)=1,否則(CY)=0D7產(chǎn)生進(jìn)位,則(CY)=1,否則(CY)=0(R2)≠0,則到LOOP處從A中減去源操作數(shù)和借位標(biāo)志CY,結(jié)果留住A中。作為有符號(hào)數(shù),溢出(超出-128~+127)INCdirect;需要判斷DPTR(DPL、DPH)的內(nèi)容,(A)←(A)-((Ri))-(CY)(A)=42H,(R3)=68H,(CY)=1DECRn;2)帶進(jìn)位加法指令A(yù)DDC例:(R0)=7EH,(7E)=0FFH,(7F)=40H
INC@R0INCR0INC@R0(R0)=7FH,(7EH)=00H,(7FH)=41H3/21/202511常用于訪問(wèn)連續(xù)地址和循環(huán)程序中循環(huán)數(shù)的控制例:把20H~2FH單元內(nèi)容移入40H~4FH單元中
MOVR0,#20HMOVR1,#40H MOVA,@R0
MOV@R1,AINCR0INCR1 ······MOVA,@R0
MOV@R1,A INCR0INCR116次1組
MOVR0,#20HMOVR1,#40HMOVR2,#10HLOOP:MOVA,@R0
MOV@R1,AINCR0INCR1DJNZR2,LOOP;(R2)←(R2)-1,若(R2)≠0,則到LOOP處RET3/21/2025124)十進(jìn)制調(diào)整指令以上是十六進(jìn)制表示的二進(jìn)制的加法運(yùn)算,其結(jié)果都是十六進(jìn)制。十進(jìn)制(BCD碼)加法的結(jié)果應(yīng)該是十進(jìn)制,但系統(tǒng)沒(méi)有專門(mén)的十進(jìn)制指令,因此只能借助二進(jìn)制加法指令(把十進(jìn)制當(dāng)作十六進(jìn)制相加),但結(jié)果可能出現(xiàn)A~F,BCD碼中無(wú)A~F,所以需要進(jìn)行十進(jìn)制調(diào)整,將十進(jìn)制加法結(jié)果調(diào)整為十進(jìn)制。DAA3/21/202513例:求67D和56D的和,先看作67H+56H,再調(diào)整
MOVR3,#67HADDA,#56H;(A)=C3H,并不是123H
DAA;(A)=123H,(CY)=1
123H為壓縮BCD碼,表示百位是1,十位為2,個(gè)位為3十進(jìn)制數(shù)相加時(shí),在ADD和ADDC后各加上一條DAA即可3/21/202514例:兩個(gè)4位BCD碼相加,一個(gè)存于(31H)(30H),另一個(gè)存于(33H)(32H),和擬回存于(31H)(30H)中,編程MOVR0,#30HMOVR1,#32HMOVA,@R0ADDA,@R1DAAMOV@R0,AINCR0INCR1MOVA,@R0ADDCA,@R1DAAMOV@R0,A3/21/2025152、減法指令均為帶借位的減法指令1)帶借位的減法指令:從A中減去源操作數(shù)和借位標(biāo)志CY,結(jié)果留住A中。
SUBBA,Rn
;
(A)←(A)-(Rn)-(CY)SUBBA,@Ri
;(A)←(A)-((Ri))-(CY)SUBBA,direct
;(A)←(A)-(direct)-(CY)SUBBA,#data
;(A)←(A)-#data-(CY)3/21/202516D7位有借位(不夠減),則(CY)=1,否則(CY)=0;D3位有借位,則(AC)=1,否則(AC)=0;D6位有借位而D7位不借位,或D7位有借位而D6位不借位,則(OV)=1,否則(OV)=0影響奇偶標(biāo)志P3/21/202517例:(A)=0C9H,(R2)=54H,(CY)=1
SUBBA,R2
結(jié)果:
(A)=74H(CY)=0(AC)=0(OV)=1(P)=0
若為有符號(hào)數(shù)0C9H為負(fù)數(shù),54H為正數(shù),74H為正數(shù),負(fù)數(shù)-正數(shù)=正數(shù),明顯錯(cuò)誤,故(OV)=13/21/202518注:若只做單字節(jié)減法(8位-8位),即不帶借位減法,應(yīng)先將CY清零:CLRC再執(zhí)行SUBB指令。3/21/2025192)減1指令DECA;(A)←(A)-1DECRn
;(Rn)←(Rn)-1DECdirect;(direct)←(direct)-1DEC@Ri
;((Ri))←((Ri))-1除第一條影響P外,其他對(duì)標(biāo)志位不產(chǎn)生影響3/21/202520注:DPTR沒(méi)有減1指令,只有加1指令。若需要DPTR-1,則:需要判斷DPTR(DPL、DPH)的內(nèi)容,若(DPL)≠0,則只需(DPL)-1;若(DPL)=0,則(DPH)-1;3/21/2025213、乘法指令MULAB
;
(A)×(B)低8位→A高8位→B均為無(wú)符號(hào)數(shù)(A)←被乘數(shù),(B)←乘數(shù);(A)←乘積低字節(jié),(B)←乘積高字節(jié)若乘積大于0FFH,則OV=1,否則OV=0。CY總是清零3/21/202522例:16位×8位
設(shè)被乘數(shù)高8位在21H,低8位在20H,乘數(shù)在22H;乘積(24位)高、中、低字節(jié)分別在32H、31H、30H中。MOVA,20HMOVB,22HMULABMOV31H,BMOV30H,AMOVA,21HMOVB,22HMULABADDA,31HMOV31H,AMOVA,BADDCA,#00HMOV32H,A3/21/2025234、除法指令DIVAB;(A)÷(B)商→(A)余數(shù)→(B)均為無(wú)符號(hào)數(shù)(A)←被除數(shù),(B)←除數(shù)(A)←商,(B)←余數(shù)CY總是清零;若(B)=0,則(OV)=1,否則(OV)=0本指令范圍小(0~255),故用處不大3/21/202524例:將A中的二進(jìn)制數(shù)轉(zhuǎn)換為3位BCD碼,其中百位數(shù)存放于31H,十位數(shù)壓縮后存于30H中。
MOVB,#100;A=0C3H(123D)DIVAB;A=01HMOV31H,A;(31H)=01H,B=17HMOVA,#10H;A=10HXCHA,B;A=17H,B=10HDIVAB;A=02H,B=03HSWAPA;A=20HADDA,B;A=23HMOV30H,A;(32H)=23H3/21/202525三、邏輯運(yùn)算指令邏輯運(yùn)算1、“與”運(yùn)算∧
0∧0=00∧1=1∧0=01∧1=12、“或”運(yùn)算∨
0∨0=00∨1=1∨0=11∨1=13、“非”運(yùn)算,取反“A
”
1=00=14、“異或”運(yùn)算⊕
0⊕0=1⊕1=01⊕0=0⊕1=13/21/2025261、邏輯“與”指令A(yù)NLA,Rn
;
(A)←(A)∧(Rn)ANLA,direct;
(A)←(A)∧(direct)ANLA,#data;(A)←(A)∧dataANLA,@Ri
;
(A)←(A)∧((Ri))ANLdirect,A
;(direct)←(direct)∧(A)ANLdirect,#data;(direct)←(direct)∧data除前四條影響到P標(biāo)志位外,不影響其他PSW標(biāo)志位。3/21/202527例:
(P1)=35H使其高位輸出0,低位保持不變。
ANLP1,#0FH
00110101∧)0000111100000101
(P1)=05H,此做法稱為“屏蔽”位。3/21/2025282、邏輯“或”指令ORLA,Rn
;(A)←(A)∨(Rn)ORLA,direct
;(A)←(A)∨(direct)ORLA,#data
;(A)←(A)∨dataORLA,@Ri
;(A)←(A)∨((Ri))ORLdirect,A
;(direct)←(direct)∨(A)ORLdirect,#data;(direct)←(direct)∨data除前四條影響到P標(biāo)志位外,不影響其他PSW標(biāo)志位。3/21/202529例:
將A中的低3位送入P1中,并且保持P1中高5位不變。ANLA,#07H;(A)=3DHANLP1,#0F8H;(P1)=67H
ORLP1,A
00000101∨)01100000
01100101
(P1)=65H,此做法稱為“數(shù)據(jù)組合”。3/21/2025303、邏輯異或指令XRLA,Rn
;(A)←(A)⊕(Rn)XRLA,direct
;
(A)←(A)⊕(direct)XRLA,#data
;(A)←(A)⊕dataXRLA,@Ri
;(A)←(A)⊕((Ri))XRLdirect,A;(direct)←(direct)⊕(A)XRLdirect,#data;(direct)←(direct)⊕data3/21/202531例:設(shè)(P1)=0B4H
XRLP1,#31H
10110100⊕)00110001
10000101=085H
(P1)=085H此稱為“指定位取反”3/21/202532總結(jié):“ANL”常用來(lái)屏蔽(清零)某些位,欲清0的位用“0”去“與”,欲保留的位用“1”去“與”“ORL”常用來(lái)使某些位置“1”,欲置“1”的位用“1”去“或”,欲保留的位用“0”去“或”“XRL”常用來(lái)對(duì)某些位取反,欲取反的位用“1”去“異或”,欲保留的位用“0”去“異或”;同時(shí)“XRL”還可以用來(lái)判斷兩數(shù)是否相等。(A)=11HXRLA,#11H結(jié)果(A)=0,則相等。3/21/2025334、累加器A清零指令CLRA;(A)←00H只影響P標(biāo)志位3/21/2025345、累加器A取反指令CPLA;(A)←(A)不影響標(biāo)志位3/21/2025356、移位指令1)左環(huán)移指令RLA不影響標(biāo)志位例(A)=6CH=01101100B
RLA
(A)=11011000B=0D8Ha7←a0
C3/21/2025362)帶進(jìn)位的左環(huán)移指令RLCA
不影響標(biāo)志位例(A)=6CH=01101100B,(C)=1
RLCA
(A)=11011001B=0D9Ha7←a0C3/21/2025373)右環(huán)移指令RRA例
(A)=6CH=01101100B
RRA
(A)=00110110B=36Ha7→a0C3/
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 22200.5-2025低壓電器可靠性第5部分:家用和類似用途的剩余電流動(dòng)作斷路器可靠性試驗(yàn)方法
- 云南省保山市龍陵縣第一中學(xué)2024-2025學(xué)年高二下學(xué)期期末考試地理試題(含答案)
- 山東省棗莊市滕州市2025-2026學(xué)年上學(xué)期期末七年級(jí)地理試卷(含答案)
- 湖南省岳陽(yáng)市岳陽(yáng)縣第一中學(xué)2025-2026學(xué)年高一上學(xué)期1月月考語(yǔ)文試題(含答案)
- 2025~2026學(xué)年濟(jì)南市天橋區(qū)八年級(jí)第一學(xué)期生物期末考試試題以及答案
- 安徽省阜陽(yáng)市2025-2026學(xué)年高三上學(xué)期教學(xué)質(zhì)量監(jiān)測(cè)(期末)語(yǔ)文試卷含答案
- 2025-2026學(xué)年河北省張家口市橋東區(qū)八年級(jí)(上)期末數(shù)學(xué)試卷(含答案)
- 化工企業(yè)安全講課課件
- 飛行培訓(xùn)教學(xué)課件
- 飛機(jī)表面修復(fù)技術(shù)
- 預(yù)算績(jī)效自評(píng)報(bào)告培訓(xùn)
- DB14-T 1734-2025 鍋爐用甲醇燃料儲(chǔ)供設(shè)施技術(shù)條件
- 浙江省寧波市鄞州區(qū)2024-2025學(xué)年七年級(jí)上學(xué)期期末英語(yǔ)試題(含答案、聽(tīng)力原文無(wú)音頻)
- 提高連鑄機(jī)群錨地腳螺栓安裝一次合格率(修訂)4-11
- 礦山作業(yè)安全事故調(diào)查處理制度
- GB/T 45013-2024精細(xì)陶瓷基片的熱疲勞試驗(yàn)方法
- 《管理學(xué)基礎(chǔ)》教學(xué)大綱
- 充電樁場(chǎng)地租賃協(xié)議(范本)
- T-CI 263-2024 水上裝配式鋼結(jié)構(gòu)棧橋(平臺(tái))施工技術(shù)規(guī)程
- 云南省楚雄州2023-2024學(xué)年上學(xué)期期末教育學(xué)業(yè)質(zhì)量監(jiān)測(cè)九年級(jí)歷史試卷(含答案)
- 凝血功能檢測(cè)方法與臨床意義
評(píng)論
0/150
提交評(píng)論