




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上微機(jī)原理實(shí)驗(yàn)1、 實(shí)驗(yàn)?zāi)康模?、 應(yīng)用學(xué)過的匯編語言編寫簡單程序,將匯編語言在編程中實(shí)際應(yīng)用。2、 掌握匯編語言的編輯、匯編、連接、調(diào)試等基本方法。3、 靈活應(yīng)用各種語句實(shí)現(xiàn)要求的程序功能。4、 在實(shí)驗(yàn)中進(jìn)一步掌握并熟練應(yīng)用匯編語言,理解常用指令、偽指令及存儲空間分配等2、 實(shí)驗(yàn)內(nèi)容:從鍵盤取得一串字符顯示在屏幕上,然后將這串字符以輸入的反序再顯示一遍,并統(tǒng)計(jì)這字符串中A的個(gè)數(shù),顯示在屏幕上。附加要求:可以從鍵盤輸入需要統(tǒng)計(jì)的字符,并統(tǒng)計(jì)這字符串中這個(gè)字符的個(gè)數(shù),顯示在屏幕上。3、 流程圖:開 始結(jié) 束輸出相同的字符數(shù)量計(jì)數(shù)加1和輸入字符比較是否相同CX=0?指針指向
2、第一個(gè)字符設(shè)置CX循環(huán)次數(shù)即字符串的字符數(shù)輸出提示輸入字符SHU RU ZI FU CX=0?輸出指針指向單元中的字符指針指向 1指向前一個(gè)單元指針指向字符串最后一個(gè)字符設(shè)置循環(huán)次數(shù)CX為輸入的字符個(gè)數(shù)輸出提示“反轉(zhuǎn)后字符”FAN ZHUAN HOU ZI FU 輸入字符串輸出提示“輸入字符串”SHU RU ZI FU CHUAN 輸入要查找的字符否是是否指向下一個(gè)字符是 否4、 實(shí)驗(yàn)程序:DATAS SEGMENTPASS DB 20 ;預(yù)留20個(gè)字節(jié)的空間存放輸入的字符BLK1 DB 'SHU RU ZI FU CHUAN: $' ;在屏幕上要顯示的提示語句BLK2 DB
3、'SHU RU ZI FU : $'BLK3 DB 'SHU LIANG SHI: $'BLK4 DB 'FAN ZHUAN HOU: $'DATAS ENDS;*以上是數(shù)據(jù)段定義,下面開始代碼段*CODES SEGMENT ASSUME CS:CODES,DS:DATASSTART: MOV AX,DATAS MOV DS,AX ;實(shí)現(xiàn)ASSUME中的承諾;* MOV AH,09H ;字符串輸出功能09H LEA DX,BLK1 INT 21H ;*顯示第一句提示語* MOV AH,0AH ;字符串輸入功能0AH LEA DX,PASS INT
4、 21H ;*以上完成字符串輸入并顯示出來* MOV AH,2 MOV DL,0DH INT 21H MOV DL,0AH INT 21H ;*以上實(shí)現(xiàn)回車換行* MOV AH,09H LEA DX,BLK4 INT 21H ;*輸出BLK4中定義的內(nèi)容,提示為反轉(zhuǎn)后字符串* MOV CL,PASS+1 ;PASS+1處是實(shí)際輸入的字符個(gè)數(shù) MOV CH,0 ;CH置0,CX為循環(huán)的次數(shù)也就是輸入的字符個(gè)數(shù) MOV DL,PASS+1 MOV DH,0 ;DX同樣是字符個(gè)數(shù),用于后面的加法運(yùn)算 LEA SI,PASS+2 ;PASS+2處為實(shí)際輸入字符的開始位置; ADD SI,DX ;用加法
5、實(shí)現(xiàn)了將SI的指針指向了字符串的最后一個(gè)字符S0: DEC SI ;SI不斷減1,指針指向地址不斷前移,也就反向了輸出剛才輸入的字符串 MOV AH,02H ;顯示輸出功能02H MOV DL,SI ;輸出指針?biāo)赶騿卧械膬?nèi)容 INT 21H LOOP S0;*以上用循實(shí)現(xiàn)了字符串的反轉(zhuǎn)后輸出功能* MOV AH,2 MOV DL,0DH INT 21H MOV DL,0AH INT 21H ;*回車換行* MOV AH,09H LEA DX,BLK2 INT 21H;*顯示提示語BLK2輸入要查找的字符的提示語輸出* MOV AH,01H ; 有回顯的輸入,顯示的是輸入的要查找字符 INT
6、 21H MOV CL,PASS+1 XOR CH,CH LEA SI,PASS+2 XOR DL,DL ;和前面相同CX設(shè)置了循環(huán)次數(shù),SI指向第一個(gè)字符S1: CMP AL,SI ;進(jìn)行字符比較,是和Al比較,若相同則計(jì)數(shù)加1,不同則比較下一個(gè) JNZ NEXT INC DL ;DL記錄的是比較過程中相同的字符數(shù)NEXT: INC SI ;指向下一個(gè)字符LOOP S1 MOV BL,DL ;DL記錄的數(shù)量給BL后面語句輸出之前要用到DL ;*通過以上循環(huán)將所有字符比較一遍得到數(shù)量* MOV AH,02H MOV DL,0DH INT 21H MOV DL,0AH INT 21H ;*回車換
7、行* MOV AH,09H LEA DX,BLK3 INT 21H;*輸出提示語BLK3相同字符的數(shù)量* MOV DL,BL ADD DL,30H ;計(jì)數(shù)加30H是為了轉(zhuǎn)換成ASC碼輸出。 MOV AH,02H INT 21H MOV AH,4CH INT 21HCODES ENDS END START5、 調(diào)試及遇到的問題:在使用MASA進(jìn)行連接link的時(shí)候出現(xiàn)了語句的錯(cuò)誤,經(jīng)過仔細(xì)的查找將語句中因?yàn)檩斎脲e(cuò)誤,符號輸入錯(cuò)誤,比如出現(xiàn)了漢字輸入的分號等問題加以修改,程序可以正常生成obj文件,進(jìn)而可以生成exe可執(zhí)行文件,但是在執(zhí)行過程中出現(xiàn)了下面幾個(gè)比較嚴(yán)重的問題,是因?yàn)槌绦蚓帉戇壿嫽蛟?/p>
8、錯(cuò)誤造成的,雖然可以得到exe可執(zhí)行文件但是輸出的結(jié)果是有問題的,所以經(jīng)過了改正才得以解決。(1)從輸出的字符串可以看出輸出了亂碼 經(jīng)過查找是因?yàn)?,定義的字符串地址PASS,其中PASS+1是字符的個(gè)數(shù),PASS+2是第一個(gè)字符串,所以在程序中將字符個(gè)數(shù) MOV CL,PASS+1 語句寫成了MOV CL,PASS就使得程序出現(xiàn)了上面的顯示有亂碼輸出。(2)輸出的字符少了一個(gè)問題在相同的位置,字符的第一個(gè)實(shí)際的位置是在PASS+2,而在編寫程序的時(shí)候?qū)懙氖荘ASS+1,所以導(dǎo)致了在程序輸出的時(shí)候得到的是少一個(gè)字符的情況。這個(gè)問題需要仔細(xì)看輸出才發(fā)現(xiàn)的,所以在編程的時(shí)候容易發(fā)生錯(cuò)誤,在認(rèn)真看輸出
9、后發(fā)現(xiàn)少了一個(gè)字符。(3)輸出的數(shù)量顯示的是一個(gè)笑臉圖案而不是數(shù)字查找問題后發(fā)現(xiàn),是在定義輸出的時(shí)候少了一個(gè)步驟,ADD DL,30H ,加30H是讓DL中得到的計(jì)數(shù)值轉(zhuǎn)化成為ASC碼輸出然后我們才能看到數(shù)字,否則看到的都是對應(yīng)的亂碼。這個(gè)問題是一個(gè)編程程序根本問題如果不解決是得不到最終結(jié)果的,所以在多次調(diào)試和改變之后終于能夠得到最后的正確結(jié)果。6、 實(shí)驗(yàn)結(jié)果:經(jīng)過反復(fù)的找錯(cuò)調(diào)試,最終程序正確并且得到了輸出的結(jié)果,輸入任意的字符串,能夠反序輸出然后輸入要查找的字符,能夠得到要查找的字符的個(gè)數(shù)。7、 分析總結(jié):通過這次實(shí)驗(yàn),實(shí)際操作編寫一個(gè)程序,并運(yùn)行得到結(jié)果,整個(gè)過程讓我對匯編語言的理解更為深刻,對匯編語言的各種語句的功能更加熟悉,對匯編程序的運(yùn)行過程也有了更直觀的了解。課程知識和實(shí)驗(yàn)結(jié)合起來,能夠使知識運(yùn)用更熟悉靈活。同時(shí),編寫程序是一個(gè)需要知識和細(xì)心地過程,任何的細(xì)小的
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江西省九江市彭澤縣重點(diǎn)達(dá)標(biāo)名校2025屆初三周考物理試題二含解析
- 皖江工學(xué)院《計(jì)算機(jī)組成原理》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西省運(yùn)城市稷山縣2025屆三年級數(shù)學(xué)第二學(xué)期期末經(jīng)典試題含解析
- 陜西省定邊縣2025年初三綜合練習(xí)數(shù)學(xué)試題卷(三模)含解析
- 柳州工學(xué)院《足球主項(xiàng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 濰坊食品科技職業(yè)學(xué)院《漢字與板書藝術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年新媒體運(yùn)營職業(yè)技能考試試卷及答案
- 上海立達(dá)學(xué)院《藥物合成反應(yīng)Ⅰ》2023-2024學(xué)年第一學(xué)期期末試卷
- 山東省臨沂市沂南縣2025年高考生物試題考前模擬試題含解析
- 2025年中學(xué)數(shù)學(xué)教輔試卷及答案
- 2021年中國中車公司組織架構(gòu)和部門職能
- 工程設(shè)計(jì)資質(zhì)專業(yè)人員專業(yè)對照表
- 開放大學(xué)辦學(xué)組織體系建設(shè)的困境與突破路徑
- 立式機(jī)組軸線調(diào)整及瓦間隙計(jì)算
- 胸痛中心培訓(xùn)課件胸痛中心的時(shí)鐘統(tǒng)一及時(shí)間管理胸痛中心時(shí)間節(jié)點(diǎn)管理要求
- 孕期艾滋病檢測及服務(wù)流程
- 重癥肺炎患者護(hù)理查房PPT
- GB/T 9126.1-2023管法蘭用非金屬平墊片第1部分:PN系列
- GB/T 9126.2-2023管法蘭用非金屬平墊片第2部分:Class系列
- 教育調(diào)查報(bào)告3000字小學(xué)
- 功能性敷料類別及特點(diǎn)
評論
0/150
提交評論