




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 實(shí)驗(yàn)六子程序設(shè)計(jì)實(shí)驗(yàn) 一、實(shí)驗(yàn)?zāi)康?1掌握過程調(diào)用指令與過程返回指令的用法; 2掌握主程序與子程序之間的參數(shù)傳送方法; 3掌握調(diào)用子程序時(shí)堆棧的變化情況及利用壓棧、出棧保護(hù)現(xiàn)場(chǎng)的方法; 4掌握嵌套及遞歸子程序的設(shè)計(jì)方法。二、實(shí)驗(yàn)要求 1仔細(xì)閱讀教材中有關(guān)子程序設(shè)計(jì)的章節(jié); 2學(xué)會(huì)編寫子程序說明文件; 3學(xué)會(huì)設(shè)置斷點(diǎn)檢查堆棧指針的變化及堆棧內(nèi)容; 4學(xué)會(huì)用DEBUG中的P命令調(diào)試子程序; 5學(xué)會(huì)在子程序設(shè)計(jì)中保護(hù)所用到的存放器。三、實(shí)驗(yàn)內(nèi)容1采用一般子程序設(shè)計(jì)方法和遞歸子程序設(shè)計(jì)方法,編寫計(jì)算Xn的子程序要求:X值與n值由鍵盤輸入,計(jì)算結(jié)果以十六進(jìn)制形式在屏幕上顯示。2編寫程序,完成一位十六進(jìn)
2、制數(shù)的加、減、乘、除運(yùn)算。要求:從鍵盤輸入?yún)⒓舆\(yùn)算的一位十六進(jìn)制數(shù),運(yùn)算結(jié)果以十六進(jìn)制形式在屏幕上顯示,加、減、乘、除運(yùn)算要用子程序編寫。四、解題思路1對(duì)于實(shí)驗(yàn)內(nèi)容1,X值和n的值可以利用INT 21H的1號(hào)功能從鍵盤上輸入,計(jì)算結(jié)果利用INT 21H的2號(hào)功能從鍵盤上輸出??梢杂眠f歸子程序?qū)崿F(xiàn)Xn次冪的計(jì)算;2對(duì)于實(shí)驗(yàn)內(nèi)容2,鍵盤輸入的數(shù)和運(yùn)算符號(hào),輸入的運(yùn)算符號(hào)和+,-,*,/比擬,與那個(gè)符號(hào)相等就轉(zhuǎn)去執(zhí)行相應(yīng)的子程序。子程序的結(jié)果可以都把出口條件設(shè)置為相同的存放器,這樣便于程序輸出結(jié)果。五、編程實(shí)現(xiàn)5.1 內(nèi)容1子程序說明文件如下:1子程序名:CIMI;2子程序功能:計(jì)算Xn;3入口條件
3、:X的值放在DL中;4出口條件:Xn值在AX中;5受影響的存放器:AX,BX和標(biāo)志存放器F。程序清單如下:DSEG SEGMENTRLT DW 0DSEG ENDSSSEG SEGMENT STACKSKTOP DB 100 DUP(0)SSEG ENDSCSEG SEGMENT ASSUME CS:CSEG ASSUME DS:DSEG ASSUME SS:SSEGSTART: MOV AX,DSEG MOV DS,AX MOV AX,SSEG MOV SS,AX MOV SP,SIZE SKTOP MOV AH,01H;輸入 INT 21H SUB AL,30H MOV DL,AL;保存在
4、DL中 PUSH DX MOV DL,'';輸出符號(hào) MOV AH,02H INT 21H POP DX MOV AH,01H;輸入n INT 21H SUB AL,30H MOV BL,AL;保存n在BL中 XOR BH,BH;BH清零 PUSH DX MOV DL,'=';輸出=號(hào) MOV AH,02H INT 21H POP DX MOV AL,DL;默認(rèn)的入口條件AL存X數(shù)據(jù) CALL CIMI;調(diào)用子函數(shù) MOV RLT,AX;保存結(jié)果在RLT單元 MOV BL,AL;保存結(jié)果便于輸出 MOV BH,AL MOV CL,4 SHR BH,CL MOV
5、DL,BH;輸出結(jié)果高四位 CMP DL,9 JNA SHU1 ADD DL,7SHU1: ADD DL,30H MOV AH,02H INT 21H MOV DL,BL;輸出結(jié)果低四位 AND DL,0FH CMP DL,9 JNA SHU2 ADD DL,7SHU2: ADD DL,30H MOV AH,02H INT 21H MOV AH,4CH INT 21HCIMI PROC NEAR;子程序清單 AND BX,BX JZ CIMI1 DEC BX CALL CIMI;遞歸調(diào)用 MUL DL RETCIMI1: MOV AL,1 RETCIMI ENDPCSEG ENDS END S
6、TART運(yùn)行結(jié)果如下如圖6-1圖5-1 內(nèi)容1的運(yùn)行結(jié)果52 實(shí)驗(yàn)內(nèi)容2子程序設(shè)計(jì)思路:設(shè)計(jì)四個(gè)子程序,分別完成兩數(shù)相加、相減、相乘、相除的功能。子程序說明文件1:1子程序名:JIA;2子程序功能:計(jì)算兩個(gè)數(shù)a,b之和;3入口條件:a的值放在BH中,b的值放在BL中;4出口條件:結(jié)果值在AL中;5受影響的存放器:AX,BX。子程序說明文件2:1子程序名:JIAN;2子程序功能:計(jì)算兩個(gè)數(shù)a,b之和;3入口條件:a的值放在BH中,b的值放在BL中;4出口條件:結(jié)果值在AL中;5受影響的存放器:AX,BX。子程序說明文件3:1子程序名:CHENG;2子程序功能:計(jì)算兩個(gè)數(shù)a,b之和;3入口條件:a
7、的值放在AL中,b的值放在BL中;4出口條件:結(jié)果值在AL中;5受影響的存放器:AX,BX。子程序說明文件4:1子程序名:CHU;2子程序功能:計(jì)算兩個(gè)數(shù)a,b之和;3入口條件:a的值放在AX中,b的值放在BL中;4出口條件:結(jié)果值在AL中;5受影響的存放器:AX,BX。程序清單如下:DSEG SEGMENTRLT DW 0DSEG ENDSSSEG SEGMENT STACKSKTOP DB 100 DUP(0)SSEG ENDSCSEG SEGMENT ASSUME CS:CSEG,DS:DSEG ASSUME SS:SSEGSTART: MOV AX,DSEG MOV DS,AX MOV
8、 AX,SSEG MOV SS,AX MOV SP,SIZE SKTOP MOV AH,01H INT 21H SUB AL,30H MOV BH,AL;輸入第一個(gè)數(shù)據(jù)保存在BH中 MOV AH,01H INT 21H MOV CH,AL ;輸入符號(hào)保存在CH中 MOV AH,01H INT 21H SUB AL,30H MOV BL,AL ;輸入第二個(gè)數(shù)據(jù)保存在BL中 CMP CH,'+' ;輸入的是+轉(zhuǎn) JZ JIA1 CMP CH,'-' ;輸入的是-轉(zhuǎn) JZ JIAN1 CMP CH,'*' ;輸入的是*轉(zhuǎn) JZ CHENG1 CALL
9、CHU ;否那么認(rèn)為是輸入/順序執(zhí)行 JMP OUT1JIA1: CALL JIA JMP OUT1JIAN1: CALL JIAN JMP OUT1CHENG1: CALL CHENG JMP OUT1OUT1: MOV CL,04H MOV BH,AL MOV BL,AL MOV DL,'=';輸出= MOV AH,02H INT 21H SHR BH,CL MOV DL,BH ADD DL,30H;輸出結(jié)果高四位 MOV AH,02H INT 21H AND BL,0FH MOV DL,BL;輸出結(jié)果低四位 ADD DL,30H MOV AH,02H INT 21H MOV AH,4CH INT 21HJIA PROC NEAR;子程序JIA實(shí)現(xiàn)兩數(shù)相加 ADD BH,BL MOV AL,BH RETJIA ENDPJIAN PROC NEAR;子程序JIAN實(shí)現(xiàn)兩數(shù)相減 SUB BH,BL MOV AL,BH RETJIAN ENDPCHENG PROC NEAR;子程序CHENG實(shí)現(xiàn)兩數(shù)相乘 MOV AL,BH MUL BL RETCHENG ENDPCHU PROC NEAR;子程序CHU實(shí)現(xiàn)兩數(shù)相除 MOV AL,BH XOR AH,AH DIV BL RETCHU ENDPCSEG ENDS E
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工智能助力2025年財(cái)富管理:提升客戶體驗(yàn)的解決方案報(bào)告
- 人工智能在文化遺產(chǎn)數(shù)字化保護(hù)中的智能分析與決策支持報(bào)告
- 健康領(lǐng)域戶外活動(dòng)規(guī)劃與實(shí)施
- 股權(quán)投資項(xiàng)目可行性研究報(bào)告
- 2025至2030基于生物的粘合劑和密封劑行業(yè)市場(chǎng)深度研究與戰(zhàn)略咨詢分析報(bào)告
- 設(shè)計(jì)構(gòu)成導(dǎo)入方法
- 2025版綠色建筑安裝工程施工合作協(xié)議
- 二零二五版物聯(lián)網(wǎng)采購合同風(fēng)險(xiǎn)控制與設(shè)備互聯(lián)
- 二零二五年度商鋪?zhàn)赓U合同書范本:合同要素分析
- 二零二五年度健康食品連鎖店授權(quán)銷售合同示例
- 職業(yè)衛(wèi)生技術(shù)服務(wù)機(jī)構(gòu)檢測(cè)人員考試真題題庫
- 2024年共青團(tuán)團(tuán)課考試測(cè)試題庫及答案
- 2024年新華東師大版七年級(jí)上冊(cè)數(shù)學(xué)全冊(cè)教案(新版教材)
- 腸梗阻導(dǎo)管在臨床中的使用及護(hù)理注意事項(xiàng)課件
- 2024-2030年陜西省天然氣行業(yè)市場(chǎng)現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評(píng)估規(guī)劃分析研究報(bào)告
- 項(xiàng)目管理培訓(xùn)課件(完整版)課件
- 新版高中物理必做實(shí)驗(yàn)?zāi)夸浖捌鞑?(電子版)
- 【心臟介入診療術(shù)后并發(fā)癥的觀察與護(hù)理探究進(jìn)展文獻(xiàn)綜述5000字】
- 寧夏回族自治區(qū)寧夏吳忠市利通區(qū)2023-2024學(xué)年七年級(jí)下學(xué)期期末數(shù)學(xué)試卷
- 環(huán)氧樹脂的高效合成方法
- (高清版)JTGT D81-2017 公路交通安全設(shè)施設(shè)計(jì)細(xì)則
評(píng)論
0/150
提交評(píng)論