版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)實驗?zāi)康呐c內(nèi)容目的:1)進一步熟悉匯編語言程序的編輯、宏匯編、鏈接、運行基本概念;2)熟練掌握動態(tài)調(diào)試程序TD/DEBUG 的常用命令或窗口功能,學(xué)會用TD/DEBUG 調(diào)試程序,修改數(shù)據(jù)和寄存器等環(huán)境;3)熟悉掌握匯編語言程序的典型數(shù)據(jù)結(jié)構(gòu)設(shè)計、典型程序流控制方法,了解DOS/BIOS 功能調(diào)用的基本方法。內(nèi)容:(1)編寫程序?qū)崿F(xiàn)如下功能: 從鍵盤輸入任意字符串后,存入自定義存儲單元,判斷處理后將字符串中小寫字母轉(zhuǎn)換為大寫字母(其他字符不變)并按原順序?qū)⑦@些字符在屏幕
2、上顯示出來。 從鍵盤輸入在065535 之間的十進制數(shù),將其轉(zhuǎn)換為16 進制數(shù)并在屏幕中顯示出來,要求判斷輸入字符串是否為在065535 之間的十進制數(shù)。(2)復(fù)習(xí)TD 各種操作,并用DEBUG 調(diào)試程序,學(xué)會基本命令操作,并通過單步、設(shè)置斷點等方法觀察中間結(jié)果,完成正常運行。命令行方式下直接鍵入debug myfile.exe 回車(myfile 為待調(diào)試可執(zhí)行程序),進入調(diào)試方式(顯示-),鍵入H 回車顯示全部命令、格式和功能。常用命令有:U(反匯編)、A(匯編輸入指令程序)、R(寄存器顯示/修改)、I(端口輸入)、O(端口輸出)、D(顯示數(shù)據(jù))、E(修改數(shù)據(jù))。除資源修改管理功能外,重點
3、應(yīng)用T(單步)、Tn(執(zhí)行n 步)、P(過程/指令)、G(從當(dāng)前CS:IP執(zhí)行到斷點)或G=1 2(從1 執(zhí)行到2 斷點)調(diào)試實驗程序。程序流程圖:1.2. 三. 方案實現(xiàn)與測試1)實驗一的基本實驗內(nèi)容和要求 編寫代碼完成功能要求,文件格式為.asm 文件(如文件名為add.asm),將文件放入帶匯編工具的文件夾中,即含有匯編工具(MASM/TASM.EXE)和鏈接工具(LINK/TLINK.EXE)的文件夾。 全屏啟動命令行模式,進入上述文件夾輸入: tasm add.asm 或 masm add 回車后編譯產(chǎn)生add.obj 文件再輸入: tlink add.obj 或 link add
4、回車后鏈接產(chǎn)生add.exe 文件如果程序有錯誤,編譯時會產(chǎn)生錯誤提示,指出錯誤的位置和錯誤類型及錯誤碼,改正錯誤后再重新編譯鏈接。 啟動TD 并載入add.exe,在代碼段可以看到程序指令,部分符號已被實際地址或數(shù)值替換表示。直接運行:運用TD功能鍵F9,運行結(jié)果如下圖所示由圖可以看出,在數(shù)據(jù)區(qū)13B3:0000到13B3:0005分別存放的是data1,data2兩個加數(shù)和data3和的數(shù)據(jù),且運行結(jié)果正確,在運行結(jié)束之后,寄存器器中的值恢復(fù)到隨機值。單步運行:使用TD功能鍵F7,當(dāng)單步運行完mov cx,0002這條指令后,程序的運行結(jié)果如下圖所示斷點運行,比如在指令mov si+000
5、4,al zhetiao 指令上設(shè)置斷點后,程序的運行結(jié)果為:直接在代碼區(qū)添加代碼,如在指令mov si,00000 后添加指令mov ax,100.程序結(jié)果2)匯編語言程序設(shè)計實驗內(nèi)容(1)從鍵盤輸入任意字符串后,存入自定義存儲單元,判斷處理后將小寫字母轉(zhuǎn)換為大寫字母(其他字符不變)并按原順序?qū)⑦@些字符在屏幕上顯示出來。主要算法:disp proc nearxor cx,cx;給CX中的數(shù)據(jù)進行清零mov cl,input1;將輸入的字符數(shù)付給,循環(huán)次數(shù)mov si,2;input開始為實際輸入的ASCII碼again:mov dl,inputsicmp dl,61h;判斷是否為小寫字母jb
6、 nextcmp dl,7ahja nextsub dl,20h;將小寫字母轉(zhuǎn)換為大寫字母next: mov ah,02h;顯示字符int 21hinc si;SI指向下一個字符loop againretdisp endp調(diào)試程序:使用單步運行的方法,輸入字符串“123abc”,程序運行到調(diào)用子程序,單步運行指令mov cl,0001后,發(fā)現(xiàn)此時CX中的數(shù)值變?yōu)?,符合我剛才輸入的字符總數(shù)。程序第一次執(zhí)行指令cmp dl,61,可以發(fā)現(xiàn)CF=1,此時程序跳轉(zhuǎn)到顯示字符程序段,符合我剛才輸入的第一個字符1的情況。當(dāng)CX=0003時,此時程序判斷輸入的字符a是否為小寫字母,單步運行指令sub dl
7、,20h后,小寫字母a被轉(zhuǎn)換為A,程序運行結(jié)果正確。當(dāng)子程序運行結(jié)束之后,回到主程序,當(dāng)運行結(jié)果提示“Do you want to continue (y/n)”,此時如輸入y,重復(fù)程序操作,如輸入n,程序結(jié)束。最終程序運行結(jié)果如下圖所示:(2)從鍵盤輸入在065535 之間的十進制數(shù),將其轉(zhuǎn)換為16 進制數(shù)并在屏幕中顯示出來,要求判斷輸入字符串是否為在065535 之間的十進制數(shù)。 主要算法:change proc nearclcxor ax,axxor bx,bxxor dx,dxmov cl,input1mov si,2again:mov bl,inputsicmp bl,30hjb e
8、rror1cmp bl,39hja error1sub bl,30hdec clcmp cl,0jz overmov ax,1push cxloop2:mul tenloop loop2pop cxmul bxadd output,axjc errorinc sijmp againover: add output,bxjnc over1error1: mov right,0over1:retchange endp調(diào)試程序:使用單步運行的方法,輸入字符串“123”,當(dāng)程序運行到調(diào)用運行數(shù)值轉(zhuǎn)換子程序,單步運行指令mov bl,inputsi,在調(diào)試程序段顯示為mov bl,si+0001。這里和上個字符串實驗運行指令mov dl inputsi在調(diào)試程序段顯示為何不同?經(jīng)檢查發(fā)現(xiàn),在本程序的數(shù)據(jù)段中,input的值為0001.單步運行指令mov cl 0002,發(fā)現(xiàn)CX中的數(shù)值變?yōu)?,符合輸入字符串的個數(shù)。程序第一次運行指令cmp bl 30h,開始為我輸入的第一個字符是不是0-9,判斷好之后,運行指令sub bl,30h。將ASCII碼轉(zhuǎn)換為數(shù)字。程序?qū)⒆址嫁D(zhuǎn)換為數(shù)字之后,再將其轉(zhuǎn)換為十六進制數(shù)并將其輸出。當(dāng)我輸入的字符串不是0-65535中的數(shù)字時,此時程序運行結(jié)果會提示“The number you input is not from 0-6
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 石河子大學(xué)《藥物分析實驗》2022-2023學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《現(xiàn)代教育技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《紀(jì)錄片賞析》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《自動檢測技術(shù)》2022-2023學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《色彩構(gòu)成》2021-2022學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《建筑力學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《后期特效》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《電工與電子技術(shù)實驗》2021-2022學(xué)年期末試卷
- 沈陽理工大學(xué)《測量學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 海商法修改船舶融資租賃合同
- 《市場營銷》教案(第3周)市場營銷環(huán)境分析
- 租地種香蕉合同
- 上海市虹口區(qū)2024學(xué)年第一學(xué)期期中考試初三物理試卷-學(xué)生版
- 舊市場提升改造方案
- 湖北漢江王甫洲水力發(fā)電限責(zé)任公司公開招聘工作人員【6人】高頻難、易錯點500題模擬試題附帶答案詳解
- 統(tǒng)編版 七年級上冊(2024修訂) 第四單元 13 紀(jì)念白求恩 課件
- 外匯兌換居間勞務(wù)協(xié)議
- 少兒趣味編程Scratch綜合實戰(zhàn)《小車巡線》教學(xué)設(shè)計
- 國開(甘肅)2024年春《地域文化(專)》形考任務(wù)1-4終考答案
- 檔案整理及數(shù)字化服務(wù)方案(技術(shù)標(biāo) )
- 警務(wù)監(jiān)督員表態(tài)發(fā)言(共4篇)
評論
0/150
提交評論