版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、本教案內(nèi)容,第3章 8086CPU指令系統(tǒng) 匯編語言指令 8086指令分類 數(shù)據(jù)與轉(zhuǎn)移地址的尋址方式 數(shù)據(jù)傳送類指令 算術(shù)運(yùn)算類指令 邏輯運(yùn)算類指令 移位類指令 標(biāo)志位操作指令,轉(zhuǎn)移指令 循環(huán)控制指令 子程序調(diào)用返回指令 中斷調(diào)用返回指令 字符串操作指令 I/O輸入輸出指令 其它指令 宏指令,1.循環(huán)程序的基本結(jié)構(gòu),(A)先循環(huán)工作,后循環(huán)判定,(DO-UNTIL結(jié)構(gòu)),循環(huán)程序有以下兩種結(jié)構(gòu)。,3.10 循環(huán)控制指令,應(yīng)用場合:適合于循環(huán)次 數(shù)已知的情況,循環(huán)判定條件:用CX 作減1計(jì) 數(shù)控制循環(huán),要避免出現(xiàn)死循環(huán),3.10 循環(huán)控制指令,初始化準(zhǔn)備部分,出口判定,Y,N,開 始,結(jié) 束,循
2、環(huán)工作部分,循環(huán)參數(shù)調(diào)整部分,應(yīng)用場合: 適合于循環(huán)次數(shù)未知或可能會出現(xiàn)0次循環(huán)的情況,循環(huán)判定條件:用條件標(biāo)志,(B)先循環(huán)判定,后循環(huán)工作,(DO-WHILE結(jié)構(gòu)),要避免出現(xiàn)死循環(huán),3.10 循環(huán)控制指令,2.循環(huán)程序的組成,不管是哪一種循環(huán)結(jié)構(gòu),一個標(biāo)準(zhǔn)的循 環(huán)程序應(yīng)由以下四部分組成:,初始化準(zhǔn)備部分,循環(huán)工作部分,參數(shù)調(diào)整部分,出口判定部分,3.10 循環(huán)控制指令,初始化準(zhǔn)備部分,循環(huán)工作部分,這是為循環(huán)做準(zhǔn)備的,它不在循環(huán)體內(nèi)。,這部分是循環(huán)程序解題所需的核心程序,題目要完成的功能在此進(jìn)行。根據(jù)題目要求不同,這部分程序可以很簡單,也可以很復(fù)雜,甚至是內(nèi)循環(huán)嵌套外循環(huán)結(jié)構(gòu)多重循環(huán)程序
3、。,3.10 循環(huán)控制指令,參數(shù)調(diào)整部分,這部分主要用來更新某些數(shù)據(jù)或修正循環(huán)控制的參數(shù),以保證每次循環(huán)所完成的功能不是完全重復(fù)的。,3.10 循環(huán)控制指令,循環(huán)出口判定部分,循環(huán)程序中至少要有一個出口判定,以保證循環(huán)程序正常結(jié)束。也有些循環(huán)程序有多個出口,程序可以有多個條件作為循環(huán)結(jié)束的控制,只要其中一個條件滿足即可結(jié)束循環(huán)。,3.10 循環(huán)控制指令,從程序上說,以上四個部分的分界可能不是很明確的,有時工作部分與調(diào)整部分可能就是同一段程序,但從功能上說,以上幾個部分都是必需的。,3.10 循環(huán)控制指令,3.循環(huán)控制指令,為了便于循環(huán)控制,8086/8088CPU 專門設(shè)置了一類循環(huán)控制類指令
4、:,3.10 循環(huán)控制指令,3.10 循環(huán)控制指令,格式: LOOP LABEL ;(CX)(CX)-1, (CX)0時轉(zhuǎn)LABEL LOOPZ/LOOPE LABEL ;(CX)(CX)-1, (CX)0且ZF=1時轉(zhuǎn)LABEL LOOPNZ/LOOPNE LABEL ;(CX)(CX)-1, (CX)0且ZF=0時轉(zhuǎn)LABEL JCXZ LABEL ;CX=0時轉(zhuǎn)LABEL 說明: 循環(huán)控制指令的尋址方式均為段內(nèi)直接轉(zhuǎn)移,而且為短轉(zhuǎn)移方式。,3.10 循環(huán)控制指令,1. LOOP指令 LOOP(Loop)指令為常用的循環(huán)控制指令,(CX)的內(nèi)容為設(shè)定的循環(huán)次數(shù),每循環(huán)一次(CX)的內(nèi)容減1
5、,直到(CX)為零時退出循環(huán)。其循環(huán)結(jié)構(gòu)為: MOV CX, 次數(shù) ;循環(huán)準(zhǔn)備 標(biāo)號: ;循環(huán)體 LOOP 標(biāo)號 這里的“標(biāo)號”與“LOOP 標(biāo)號”指令之間至多包含128字節(jié),這是因?yàn)檠h(huán)控制指令為短轉(zhuǎn)移指令。,3.10 循環(huán)控制指令,2. LOOPZ/LOOPE指令 LOOPZ/LOOPE(Loop if zero/equal)指令與LOOP指令類似,只是當(dāng)(CX)0且ZF=1時才轉(zhuǎn)至LABEL,因此是否循環(huán),除了與設(shè)定的循環(huán)次數(shù)有關(guān)外,還與循環(huán)中設(shè)定的條件是否滿足有關(guān)。例如: MOV CX, 10 L1: CMP AX,BX ;若(AX)(BX),即ZF=0,則退出循環(huán) LOOPZ L1
6、這種指令非常適合于在指定區(qū)域中查找不同的“字符”,當(dāng)找到不同的“字符”時,會自動提出循環(huán)。,3.10 循環(huán)控制指令,3. LOOPNZ/LOOPNE LOOPNZ/LOOPNE(Loop if not zero/not equal)指令的功能與LOOPZ/LOOPE指令相反,只是當(dāng)(CX)0且ZF=0時才轉(zhuǎn)至LABEL。例如: MOV CX, 10 L2: CMP AX,BX ;若(AX)(BX),即ZF=1, 則退出循環(huán) LOOPNZ L2 這種指令非常適合于在區(qū)域中查找指定的“字符”,當(dāng)找到指定的“字符”時,會自動退出循環(huán)。,3.10 循環(huán)控制指令,4. JCXZ指令 JCXZ(Jump
7、if register CX=0)指令經(jīng)常與循環(huán)指令配合使用。如果循環(huán)次數(shù)(CX)設(shè)定為0,則要循環(huán)65536次(最大的循環(huán)次數(shù)),這一點(diǎn)與常規(guī)表示不同。為此,應(yīng)該在進(jìn)入循環(huán)前檢查(CX)的值,如果(CX)為0,則跳過循環(huán),這時可以采用JCXZ指令完成,其結(jié)構(gòu)為: MOV CX, VAR1;設(shè)定循環(huán)次數(shù),可能為0 JCXZ DONE;當(dāng)(CX)0時,跳過循環(huán) ;循環(huán)準(zhǔn)備 L3: ;循環(huán)體 LOOP L3 DONE:,3.10 循環(huán)控制指令,例3.30 設(shè)在BUFFER中保存有15個無符號字節(jié)型數(shù)據(jù),編寫程序產(chǎn)生這組數(shù)據(jù)的校驗(yàn)和,并置入第16個字節(jié)單元中。 解:常用的校驗(yàn)和產(chǎn)生算法為: 因此,設(shè)
8、在數(shù)據(jù)段中已經(jīng)定義好字節(jié)型變量BUFFER,則程序如下: LEA SI, BUFFER MOV CX,15 MOV AL,0 L1:ADD AL,SI INC SI LOOP L1 MOV SI,AL;保存校驗(yàn)和,3.10 循環(huán)控制指令,例3.31 設(shè)在BUFFER中已經(jīng)保存有字型數(shù)據(jù)(),其中前2個字節(jié)為數(shù)據(jù)的個數(shù),計(jì)算數(shù)據(jù)的差分,并保存在DIFF緩沖區(qū)中。 解:數(shù)據(jù)的差分定義為 設(shè)在數(shù)據(jù)段中已經(jīng)定義緩沖區(qū): BUFFER DW n DW X1,X2,Xn DIFF DWn-1 DUP(?) 然后,可以在代碼段中設(shè)計(jì)程序:,MOV SI,BUFFER MOV CX,SI ADDSI,2 JCXZPROCEND ;當(dāng)(CX)0時,跳過循環(huán) LEADI,DIFF MOV A
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 實(shí)木及實(shí)木復(fù)合地板備料工安全生產(chǎn)能力知識考核試卷含答案
- 加氣混凝土制品工崗前基礎(chǔ)應(yīng)用考核試卷含答案
- 水力發(fā)電運(yùn)行值班員安全風(fēng)險(xiǎn)知識考核試卷含答案
- 2025年空氣和廢氣監(jiān)測儀器項(xiàng)目發(fā)展計(jì)劃
- 2025年水分濕度傳感器合作協(xié)議書
- 2025年射頻同軸電纜組件項(xiàng)目合作計(jì)劃書
- 2025年光學(xué)纖維面板系列項(xiàng)目發(fā)展計(jì)劃
- 2025 小學(xué)一年級科學(xué)下冊認(rèn)識水果的種子課件
- 狍子介紹教學(xué)課件
- 2026年航空發(fā)動機(jī)高溫合金項(xiàng)目建議書
- 2025年國防科工局機(jī)關(guān)公開遴選公務(wù)員筆試模擬題及答案
- 2024-2025學(xué)年山東省濟(jì)南市天橋區(qū)八年級(上)期末語文試卷(含答案解析)
- (高清版)DB44∕T 724-2010 《廣州市房屋安全鑒定操作技術(shù)規(guī)程》
- 2025職業(yè)健康培訓(xùn)測試題(+答案)
- 供貨流程管控方案
- 《實(shí)踐論》《矛盾論》導(dǎo)讀課件
- 中試基地運(yùn)營管理制度
- 老年病康復(fù)訓(xùn)練治療講課件
- DB4201-T 617-2020 武漢市架空管線容貌管理技術(shù)規(guī)范
- 藥品追溯碼管理制度
- 腳手架國際化標(biāo)準(zhǔn)下的發(fā)展趨勢
評論
0/150
提交評論