版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
4.3匯編語言程序設(shè)計(jì)的基本方法一、程序設(shè)計(jì)步驟二、源程序的匯編、連接與調(diào)試三、IBMPC匯編語言程序源程序的完整結(jié)構(gòu)及偽指令四、順序結(jié)構(gòu)五、分支結(jié)構(gòu)六、循環(huán)結(jié)構(gòu)七、子程序八、DOS系統(tǒng)功能調(diào)用九、字符串處理十、宏指令1.七、子程序1、過程定義2.六、子程序概念:子程序?yàn)楣δ艽_定、且獨(dú)立的程序段。優(yōu)點(diǎn):可以將任何一段獨(dú)立的程序歸整為一個(gè)子程序,當(dāng)需要該段程序時(shí),只需調(diào)用子程序即可,調(diào)用后會(huì)自動(dòng)返回到調(diào)用指令的下一條指令。因此采用子程序設(shè)計(jì)時(shí),可以簡(jiǎn)化程序設(shè)計(jì)。從調(diào)試程序的角度,由于原本在多處出現(xiàn)的程序段,縮減為子程序調(diào)用指令,使調(diào)試程序更加方便。3.缺點(diǎn):采用子程序設(shè)計(jì)后。由于調(diào)用子程序和從子程序中返回需要執(zhí)行指令,并且為保護(hù)某些寄存器的內(nèi)容,需要進(jìn)行壓入堆棧和彈出堆棧的操作,因此會(huì)使程序執(zhí)行速度受到一定的影響。
六、子程序4.實(shí)現(xiàn):子程序調(diào)用是通過自動(dòng)修改(IP)和/或(CS)的內(nèi)容實(shí)現(xiàn)的。為了確保子程序調(diào)用后能夠返回到調(diào)用指令之后,CALL指令會(huì)自動(dòng)保存返回地址(IP和/或CS),而RET指令會(huì)自動(dòng)返回到CALL指令的下一條指令。
六、子程序5.2、調(diào)用和返回指令CALL指令:段內(nèi)調(diào)用段間調(diào)用段內(nèi)直接調(diào)用段內(nèi)間接調(diào)用段間直接調(diào)用段間間接調(diào)用六、子程序6.(IP)(cs)7.段內(nèi)調(diào)用子過程與原調(diào)用程序在同一代碼段,在調(diào)用之前會(huì)自動(dòng)把斷點(diǎn)的偏移地址壓棧(調(diào)用指令的下一條指令的地址)斷點(diǎn)入口地址CALLTIMERCALLWORDPTR[SI]六、子程序8.段間調(diào)用子過程與原調(diào)用程序不在同一代碼段,在調(diào)用之前會(huì)自動(dòng)把斷點(diǎn)的段基地址和偏移地址壓棧。先將斷點(diǎn)的CS壓棧,再壓入IP。CALLFARPTRTIMERCALLDWORDPTR[SI]六、子程序9.返回指令格式:
RETRETF近返回:從棧頂彈出兩個(gè)字節(jié)內(nèi)容送IP,
SP內(nèi)容加2遠(yuǎn)返回:從棧頂彈出四個(gè)字節(jié)內(nèi)容分別送CS和IP,SP內(nèi)容加4從堆棧中彈出斷點(diǎn)地址,返回源程序。段內(nèi)返回(近返回)段間返回(遠(yuǎn)返回)斷點(diǎn)入口地址六、子程序10.3、主程序和子程序間的參數(shù)傳遞入口參數(shù):將主程序給子程序提供的初始數(shù)據(jù)或獲得初始數(shù)據(jù)的信息稱為子程序的入口參數(shù)。出口參數(shù):子程序返回給主程序的結(jié)果稱為子程序的出口參數(shù)。參數(shù)傳遞可用以下3種方法完成:*利用寄存器*利用內(nèi)存單元(變量)傳遞參數(shù)。*利用堆棧六、子程序11.4、子程序說明文件
六、子程序12.5、過程的嵌套、遞歸調(diào)用
過程的嵌套六、子程序遞歸調(diào)用當(dāng)子程序嵌套時(shí),若某子程序要調(diào)用的子程序就是其本身,則稱為遞歸調(diào)用。13.例1
子程序設(shè)計(jì),編寫子程序?qū)崿F(xiàn)統(tǒng)計(jì)一個(gè)字(AX)中“1”的個(gè)數(shù)。解:利用移位指令或循環(huán)移位指令,每次對(duì)CF位進(jìn)行檢測(cè):當(dāng)CF=1時(shí),則總個(gè)數(shù)加1;當(dāng)CF=0時(shí),則總個(gè)數(shù)不變。這種操作可以采用有條件轉(zhuǎn)移指令來實(shí)現(xiàn),也可采用方便的ADC指令實(shí)現(xiàn)。子程序如下:
六、子程序14.COUNTER1PROCNEARPUSHAX MOVCX,16 XORBL,BLCOU1: SHRAX,1 ADCBL,0 LOOPCOU1POPAXRETCOUNTER1ENDP六、子程序15.例1
子程序應(yīng)用。利用上例設(shè)計(jì)的子程序,統(tǒng)計(jì)字型變量VAR1中1的個(gè)數(shù)。解:在數(shù)據(jù)段中定義變量VAR1和CounterVar1:
VAR1 DW 1234H CounterVar1 DB?則可在代碼段中編寫程序:
MOVAX,VAR1 CALLCOUNTER1 MOV CounterVar1,BL執(zhí)行后,結(jié)果單元CounterVar1的值為5,說明1234H中包含有5個(gè)“1”。
六、子程序16.例2
編寫程序,完成將一組BCD數(shù)轉(zhuǎn)換成16位二進(jìn)制數(shù)。(BCD數(shù)轉(zhuǎn)換成16位二進(jìn)制數(shù)用子程序?qū)崿F(xiàn))
BCD數(shù)轉(zhuǎn)換成16位二進(jìn)制數(shù)的算法步驟為:①DX=0;(用DX存放結(jié)果)②取要轉(zhuǎn)換的一組BCD數(shù)中的高位→(AX)③(DX)=(DX)*10+(AX)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年福建師范大學(xué)協(xié)和學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試模擬試題有答案解析
- 2026年蚌埠經(jīng)濟(jì)技術(shù)職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)考試備考試題帶答案解析
- 2026年福建師范大學(xué)協(xié)和學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試參考題庫有答案解析
- 2026年安徽電氣工程職業(yè)技術(shù)學(xué)院?jiǎn)握芯C合素質(zhì)筆試參考題庫帶答案解析
- 2026年廣西建設(shè)職業(yè)技術(shù)學(xué)院?jiǎn)握芯C合素質(zhì)筆試模擬試題帶答案解析
- 2026年桂林山水職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能考試模擬試題帶答案解析
- 2026年電子科技大學(xué)成都學(xué)院?jiǎn)握芯C合素質(zhì)筆試參考題庫帶答案解析
- 2026年黑龍江護(hù)理高等??茖W(xué)校單招綜合素質(zhì)考試備考試題帶答案解析
- 2025年區(qū)塊鏈在數(shù)字版權(quán)創(chuàng)新模式研究報(bào)告
- 2025年肇慶市高要區(qū)巡察服務(wù)保障中心2025年選聘5人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 公司財(cái)務(wù)部門工作職責(zé)
- 原輔材料領(lǐng)料申請(qǐng)單
- 人教版九年級(jí)數(shù)學(xué)上冊(cè)22 3 3拱橋問題和運(yùn)動(dòng)中的拋物線 一課一練 (含答案)
- 2023年個(gè)稅工資表
- 網(wǎng)球運(yùn)動(dòng)基本知識(shí)及規(guī)則課件
- 2023新青年新機(jī)遇新職業(yè)發(fā)展趨勢(shì)白皮書-人民數(shù)據(jù)研究院
- 管理學(xué)原理教材-大學(xué)適用
- 變電站一次側(cè)設(shè)備溫度在線監(jiān)測(cè)系統(tǒng)設(shè)計(jì)
- GB/T 6579-2007實(shí)驗(yàn)室玻璃儀器熱沖擊和熱沖擊強(qiáng)度試驗(yàn)方法
- GB/T 5760-2000氫氧型陰離子交換樹脂交換容量測(cè)定方法
- GB/T 16913.3-1997粉塵物性試驗(yàn)方法第3部分:堆積密度的測(cè)定自然堆積法
評(píng)論
0/150
提交評(píng)論