8086匯編語(yǔ)言分支程序設(shè)計(jì)說課材料_第1頁(yè)
8086匯編語(yǔ)言分支程序設(shè)計(jì)說課材料_第2頁(yè)
8086匯編語(yǔ)言分支程序設(shè)計(jì)說課材料_第3頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、8 0 8 6 匯 編 語(yǔ) 言 分 支程序設(shè)計(jì)匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告學(xué)院:計(jì)算機(jī)科學(xué)與技術(shù)專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級(jí):計(jì)科131姓名學(xué)號(hào)實(shí)驗(yàn)組實(shí)驗(yàn)時(shí)間指導(dǎo)教師肖敏成績(jī)實(shí)驗(yàn)項(xiàng)目名稱實(shí)驗(yàn)三:8086匯編語(yǔ)言分支程序設(shè)計(jì)實(shí) 驗(yàn) 目 的熟悉分支程序的調(diào)試方法。實(shí) 驗(yàn) 原 理對(duì)匯編源程序進(jìn)行匯編、鏈接,在 Debug環(huán)境下完成調(diào)試和運(yùn)行。實(shí) 驗(yàn) 內(nèi) 容編寫一個(gè)程序,顯示AL寄存器中的兩位十六進(jìn)制數(shù)實(shí) 驗(yàn) 環(huán) 境1. 硬件:微型計(jì)算機(jī)1臺(tái)2. 軟件:MASM軟件實(shí) 驗(yàn) 步 驟實(shí)驗(yàn)一:編程實(shí)現(xiàn)在顯示器上輸出 AL中的內(nèi)容:1.源程序如下所示,編輯下面的源程序到文件 three.asm中:CODE SEGM

2、ENTASSUME CS:CODESTART: MOV AL,3EH;此處假設(shè)為 3EHMOV BL,ALMOV DL,ALMOV CL,4SHR DL,CLCMP DL,9JBE NEXT1ADD DL,7NEXT1: ADD DL,30HMOV AH,2INT 21H ;顯示高位ASCII碼MOV DL,BLAND DL,0FHCMP DL,9JBE NEXT2ADD DL,7NEXT2: ADD DL,30HMOV AH,2INT 21H ;顯示低位ASCII碼MOV AH,4CHINT 21HCODE ENDS 返回 DOSEND START使用相應(yīng)的文本編輯器建立文件three.as

3、m,內(nèi)谷如上所示。 2.生成可執(zhí)行文件:1>.匯編:C:masm> masm three;2>.連接: C:masm> link three;V : Ninas0 >m-asn ttireeII icirosof t <B> Macro nssembler Uersion 5 .00Ctjpyviglit (O Microsoft Gvip 1981-1?85< 1SB7. All risflrts reservedObject filenane three.OBJ:Scurce listing LNUL.LST:Cross-reference

4、LNUL.CRJ?:5S502 + 41533Ssymbol space free0 Earning Errors0 Seuere ErropsD : nasn)58>l in If ±hreeMicTosoft (B) Overlay Linger Uersicn 3 陰op_yriffhC (C) flicrosoft Corp 1?83-1?87. All rights reserved.Run Pile 【THREE-EXEJ:List File HUL.HAP:Liha*aries -LIB1:LINK : warninsr 14S21: no tacJc segme

5、ntD:nasn50>3.運(yùn)行及調(diào)試:1>.運(yùn)行:C:masm>debug three.exe-U0 ;通過反匯編查找程序的斷點(diǎn)T=0 2 ;加載數(shù)據(jù)段D0 ;查看原始數(shù)據(jù)是否正確G=0 XX ;運(yùn)行程序至斷點(diǎn)XX處R ;查看程序運(yùn)行結(jié)果以上命令執(zhí)行的細(xì)節(jié)可參照實(shí)驗(yàn)二中的說明。Hi扎:、詩(shī)-DEBUG THREE.EXEAM=«H3b BH=OO0H l)S=1402 I S=li021412:0902 BADOCM=0B2h 呻胡血0 SP=6C9HSS=ltl2 CS=lil2 IP=m)02HOW DI ,01BP=(10«0 Sl=eOO»

6、; 01=(J0UH陰 UP LI PL NZ NH P0 NGIX 0U3E BK 0000 DS-1402 ES-1W2 141.2;0m-Dfl uO2;eao1402:00201402:QD3U 14:0340CM Q02r DK B03E 刖況盹SS-1U2 CS-1A12 IP-OCQli MOVB卩的盹SI=06GO 01 W觀 NV UP tl PL HZNR 卩0 NC140Z:O0S« UQ2:0W 1W;C07fl -6=0 9950H5l:H2fl0E FF 吐 tIH21旳FF17 FF IK 朋 t:U?FB3FFU0 如 HE)?n ?nAS FF lt

7、i Hfi HH2G?09A flE FF JU tlH HH ?A ?AFfiFtFFU2Ml朋2flFF-1D 0D-61FF-FF 14-fl 00輸 00 H0 20-00;o-eoFOP】Ff HU 冊(cè)IFQIFFH刖HH朋BR03I卜00(J舶陽(yáng)C2E2薊60or FF13 HUHH ?e ?eRP8R FF Fl 0U 刖2H2flOR0349側(cè)2«?Arrogran-R ftW-ftfiOE PS-1402 1412:0000 B03Etprwinfitfid ncrnaIBW-009ft CX-092F酬-0他 ECS 1A02 SS H12 CS Lil? IP

8、幗的HOV ALS3EBP-oooeNV UP El PL HZ Nfl P0 NCST-aeoti01-00004.調(diào)試:修改AL的內(nèi)容,判斷此程序是否能正確顯示其中的內(nèi)容的方法。例:修改AL內(nèi)容為9AH-L ;重新加載可執(zhí)行文件A0 ;重新修改MOV AL 3EH指令361E: 0000 MOV AL, 9A361E: 0002G= 0 xx;帶斷點(diǎn)運(yùn)行R ;查看程序運(yùn)行結(jié)果實(shí)驗(yàn)二:編寫一個(gè)數(shù)據(jù)區(qū)移動(dòng)程序,要考慮源數(shù)據(jù)區(qū)與目的數(shù)據(jù)區(qū)有重疊的 情況。1. 源程序如下所示,編輯下面的源程序到文件lab.asm中: 使用相應(yīng)的文本編輯器建立文件lab.asm,內(nèi)容如上所示。2. 生成可執(zhí)行文件:

9、1>.匯編:C:masm> masm lab;2>.連接: C:masm> link lab;3. 運(yùn)行及調(diào)試:1>.運(yùn)行:C:masm>debug lab.exeU0 ;通過反匯編查找程序的斷點(diǎn)T=0 2 ;加載數(shù)據(jù)段D0 ;查看原始數(shù)據(jù)是否正確G=0 XX ;運(yùn)行程序至斷點(diǎn)XX處R ;查看程序運(yùn)行結(jié)果實(shí)驗(yàn)三:編程完成一個(gè)字符串的統(tǒng)計(jì),要求分別統(tǒng)計(jì)出字母、數(shù)字、其它字 符的個(gè)數(shù)。1. 源程序如下所示,編輯下面的源程序到文件lab1.asm中:DATA SEGMENTNUMBER DB 0CHAR DB 0REST DB 0STR1 DB'NUMBE

10、R:','$'STR2 DB'CHAR:','$'STR3 DB'REST:','$'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXAGAIN:MOV AH,1INT 21HCMP AL,0DHJZ EXITCMP AL,'O'JNL NEXT1INC RESTJMP AGAINNEXT1:CMP AL,9JBE N1CMP AL,65JNL NEXT2INC RESTJMP AGAINNEXT2:C

11、MP AL,90JBE N2CMP AL,97JNL NEXT3INC RESTJMP AGAINNEXT3:CMP AL,122JBE N2JMP AGAINN1:INC NUMBERJMP NUMBERJMP AGAINN2:INC CHARJMP AGAINEXIT:LEA DX,STR1MOV AH,09HINT 21HMOV DL,NUMBERADD DL,30HMOV AH,2INT 21HLEA DX,STR2MOV AH,09HINT 21HMOV DL,CHARADD DL,30HMOV AH,2INT 21HLEA DX,STR3MOV AH,09HINT 21HMOV D

12、L,RESTADD DL,30HMOV AH,2INT 21HMOV AH,4CHINT 21HCODE ENDSEND START使用相應(yīng)的文本編輯器建立文件Iab1.asm,內(nèi)容如上所示2. 生成可執(zhí)行文件:1>.匯編:C:masm> masm lab1;2>.連接:C:masm> link lab1;1 Uar-nin tarot's0 Seuere ErrorsD : jhao nOMinh lablMicros oft (R> Ouerlay L inkerIon 3.60Copyright <C> Microsoft Corp 1983-187, A11 rights reserved*Run Fi le rTBl.EXEl:List File fNHL.MAPI:Libi'Av ie3 .LID!:LINK : uarning L4021: no stack segmentb:m*s m&0>實(shí)驗(yàn)結(jié)果3.運(yùn)行及調(diào)試:1>.運(yùn)行:C:ma

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論