




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課 程 設(shè) 計(jì) 說(shuō) 明 書(shū)題目:打字練習(xí)院系:專(zhuān)業(yè)班級(jí):學(xué) 號(hào):學(xué)生姓名:指導(dǎo)教師:2010年 12 月 31日安徽理工大學(xué)課程設(shè)計(jì)(論文)任務(wù)書(shū)計(jì)算機(jī)科學(xué)與工程學(xué)院硬件 教研室學(xué) 號(hào)設(shè)計(jì)題目設(shè)計(jì)技術(shù)參數(shù)1 熟悉匯編指令、宏匯編語(yǔ)言的編程方法2 BIOS中斷調(diào)用、系統(tǒng)功能中斷調(diào)用方法3 磁盤(pán)文件、及文件內(nèi)容操作題目的選擇是根據(jù)匯編語(yǔ)言的特點(diǎn)主要針對(duì)系統(tǒng)內(nèi)部的一些中斷調(diào)用、系統(tǒng)功能調(diào)用、系統(tǒng)數(shù)據(jù)處理、文件數(shù)據(jù)處理而設(shè)計(jì)的,是對(duì)所學(xué)課程知識(shí)較為系統(tǒng)的應(yīng)用。設(shè)計(jì)要求由于匯編語(yǔ)言編程相對(duì)其他語(yǔ)言編程比較復(fù)雜,因此,在設(shè)計(jì)上應(yīng)把重點(diǎn)放在程序的功能實(shí)現(xiàn)上,不要太在意程序的結(jié)構(gòu)和顯示界面的設(shè)計(jì)。不要局限于題
2、目所規(guī)定的要求,可以靈活裁減,設(shè)計(jì)出功能更完善程序。另外,也可以自己設(shè)計(jì)題目,同時(shí),提出詳細(xì)的功能描述,經(jīng)指導(dǎo)老師審查同意后也可作為課程設(shè)計(jì)的題目。工作量工作計(jì)劃第 1次熟悉軟件環(huán)境。第 2次繪制程序流程圖。第 3次用編寫(xiě)程序。第 4次用調(diào)試運(yùn)行程序。第 5次編寫(xiě)課程設(shè)計(jì)說(shuō)明書(shū)1.李敬兆 8086/8088和 arm核匯編語(yǔ)言程序設(shè)計(jì) 中國(guó)科技大學(xué)出版社2.沈美明,溫冬嬋 編著 IBMPC匯編語(yǔ)言程序設(shè)計(jì)(第二版) 清華大學(xué)出版社出版參考資料3. 沈美明,溫冬嬋,張赤紅 編著 IBMPC 匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)教程清華大學(xué)出版社出版年 月 日安徽理工大學(xué)課程設(shè)計(jì)(論文)成績(jī)?cè)u(píng)定表年月日摘要在 的
3、 目錄1 設(shè)計(jì)目的 .12 概要設(shè)計(jì) .2 3 詳細(xì)設(shè)計(jì) .4 4 程序調(diào)試 .10 5 心得體會(huì) .13 參考文獻(xiàn).14I安徽理工大學(xué)課程設(shè)計(jì)(論文)1 算機(jī)所有硬件特性并能直接控制硬件的唯一語(yǔ)言。由于匯編語(yǔ)言如此的接近計(jì)算機(jī)硬件,因此,它可以最大限度地發(fā)揮計(jì)算機(jī)硬件的性能。由此可見(jiàn)匯編語(yǔ)言的重要性,學(xué)好這門(mén)課程,同樣可為相關(guān)的專(zhuān)業(yè)打下基礎(chǔ)。有一定功能的應(yīng)用系統(tǒng),并且在實(shí)驗(yàn)的基本技能方面進(jìn)行了一次全面的訓(xùn)練。編語(yǔ)言程序的設(shè)計(jì)和調(diào)試。的目的。-1-安徽理工大學(xué)課程設(shè)計(jì)(論文)2 2.1 系統(tǒng)總體分析此程序的主要目的是在 DOS 界面下實(shí)現(xiàn)打字練習(xí)的功能。具體實(shí)現(xiàn)中從總體來(lái)看鍵后如何實(shí)現(xiàn)暫停和繼
4、續(xù)的功能模塊,按下E實(shí)現(xiàn)退出功能的模塊以及按下ESC 鍵后返回主界面模塊等。2.2 主模塊框圖及說(shuō)明打字練習(xí)程序的主要功能模塊圖如圖 2-1:圖 程序執(zhí)行流程圖如圖 2-2:-2-安徽理工大學(xué)課程設(shè)計(jì)(論文)按EY?NNNY?NYY圖 -3-安徽理工大學(xué)課程設(shè)計(jì)(論文)3 3.1 主模塊及子模塊說(shuō)明界面顯示模塊:主要包括兩部分,運(yùn)行可執(zhí)行程序顯示主界面以及按下Enter鍵顯示 78 個(gè)字母組成的亂序行。字母位置產(chǎn)生新的字母;當(dāng)字母輸入錯(cuò)誤時(shí),界面上字母下方的笑臉置為空格。到你再次鍵入空格鍵后字母才會(huì)繼續(xù)下落,否則保持暫停狀態(tài)并一直持續(xù)下去。實(shí)現(xiàn)退出和返回功能模塊:進(jìn)入主界面后,按下E則程序退出
5、;進(jìn)入字母下落界面按下 ESC 鍵程序則返回主界面。3.2 各模塊詳細(xì)設(shè)計(jì)面,如圖 3-1:行圖 字母輸入正確與否的相關(guān)處理模塊:當(dāng)輸入字母的 ASCII 碼與當(dāng)前下落字母的ASCII時(shí),界面上字母下方的笑臉置為空格。等待鍵盤(pán)輸入。-4-安徽理工大學(xué)課程設(shè)計(jì)(論文)實(shí)現(xiàn)退出和返回功能模塊:進(jìn)入主界面后,按下E則程序退出;進(jìn)入字母下落界面按下 ESC 鍵程序則返回主界面。程序主要功能代碼及其說(shuō)明如下:clear_screen macro op1,op2,op3,op4 ;清屏宏定義mov ah,06hmov al,00hmov bh,07hmov ch,op1mov cl,op2mov dh,o
6、p3mov dl,op4int 10hmov ah,02hmov bh,00hmov dh,00hmov dl,00hint 10h;設(shè)置光標(biāo)位置endmmenu macro op1,op2,op3 ;菜單顯示宏定義mov ah,02hmov bh,00hmov dh,op1mov dl,op2int 10hmov ah,09hlea dx,op3int 21hendmclear_screen 00d,00d,24d,79d;清屏menu 05d,15d,WPmenu 07h,15d,date菜單信息的宏調(diào)用-5-安徽理工大學(xué)課程設(shè)計(jì)(論文)menu 09d,15d,megmenu 11d,1
7、5d,meg1menu 13d,15d,meg2menu 15d,15d,meg3menu 17d,15d,meg4put: mov ah,02h;設(shè)置光標(biāo)位置mov bh,00hmov dh,22dmov dl,33dint 10hmov ah,01hint 21h;從鍵盤(pán)輸入任意字符cmp al,0dhje speed3;如果鍵入為 Enter,則開(kāi)始;如果鍵入為E,則退出cmp al,45hje exitexit: mov ah,4chint 21hspeed3: mov ax,speedmov speed,axjmp beginnextletter:mov ah,02hmov dl,s
8、iint 21h;顯示字母inc siinc cxcmp cx,78dje nextcyclejmp nextletternextcycle:lea di,letters;判斷字母位置是否在屏幕范圍內(nèi)-6-安徽理工大學(xué)課程設(shè)計(jì)(論文)lea si,position_flagadd present_position,30d ;控制下一個(gè)字母的位置cmp present_position,78ja from_front;若不在則跳轉(zhuǎn)out_cycle:in_cycle:; 延遲push cxmov cx,00hadd cx,01hcmp cx,1000jne in_cyclepush dx;字符在
9、每一位置所停留時(shí)間,延遲;保存之前字符位置;從鍵盤(pán)輸入字符mov ah,06hmov dl,0ffhint 21hpop dxjz pass字符在左上則轉(zhuǎn)移cmp al,1bhje to_start1cmp al, je pause;如果鍵入 ESC,則返回主菜單;如果鍵入 SPACE,則游戲暫停輸入字母正確!則字母消失cmp al,dije disappearpop cxpass:inc cxcmp cx,speedje print;字符下落速度,也起延遲作用暫停處理jmp out_cyclepause: push dxmov ah,06hmov dl,0ffhint 21hpop dx-7
10、-安徽理工大學(xué)課程設(shè)計(jì)(論文)cmp al, jne pausejmp pass;若輸入空格則繼續(xù);返回主菜單to_start1:print:jmp startmov ah,0ahmov al, mov bh,00hmov cx,01hint 10h;在當(dāng)前光標(biāo)位置寫(xiě)空格inc dhmov ah,02hmov bh,00hint 10h;改變光標(biāo)位置mov ah,0ahmov al,dimov bh,00hmov cx,01hint 10h;在當(dāng)前光標(biāo)位置寫(xiě)字母pop cxinc cxcmp cx,21dje print_next_letterjmp nextrow下一行disappear:;
11、擊中字母后輸出空格pop cxpop cxmov ah,0ahmov al, mov bh,00hmov cx,01hint 10hjmp hit-8-安徽理工大學(xué)課程設(shè)計(jì)(論文)hit: mov ah,02hmov bh,00hmov dh,01hmov dl,present_positionint 10hmov al,di ;出現(xiàn)下一個(gè)新字母的算法add al,7cmp al,7ahja convey_lettermov ah,0ahmov bh,00hmov cx,01hint 10hmov di,aladd letter_counter,01hjmp nextcycle-9-安徽理工大
12、學(xué)課程設(shè)計(jì)(論文)44.1 運(yùn)行界面分析運(yùn)行可執(zhí)行程序后出現(xiàn)主界面,主界面如圖 4-1:圖鍵入 Enter鍵后出現(xiàn) 78個(gè)字母組成的亂序行并且字母下落,如圖 4-2:圖這時(shí)其中任一字母落下,在鍵盤(pán)上敲入該字母,如果輸入正確,字母消失。如果輸入不正確,界面中的笑臉變?yōu)榭崭?,如圖 4-3:-10-安徽理工大學(xué)課程設(shè)計(jì)(論文)圖 按空格鍵暫停,如圖 4-4:圖 再按下空格鍵時(shí)字母繼續(xù)下落,如圖 4-5:-11-安徽理工大學(xué)課程設(shè)計(jì)(論文)圖 按下 ESC 鍵則返回主界面。4.2 調(diào)試過(guò)程及分析用匯編編譯軟件 MASM 對(duì)編寫(xiě)的源程序(wordgame.asm)進(jìn)行編譯,連接,運(yùn)行,并在dos界面下運(yùn)
13、行debug命令debug wordgame.exe,然后執(zhí)行可執(zhí)行程序進(jìn)入主界面。起初連接后出現(xiàn)了下面的問(wèn)題:后來(lái)才注意到將文件保存的路徑中應(yīng)該不能含中文,如圖 4-6:圖 在接下來(lái)的運(yùn)行過(guò)程中,基本上沒(méi)遇到什么特別大的問(wèn)題。-12-安徽理工大學(xué)課程設(shè)計(jì)(論文)5 5.1 設(shè)計(jì)體會(huì)本次的課程設(shè)計(jì)是我接觸的第一門(mén)用低級(jí)語(yǔ)言實(shí)現(xiàn)的課程設(shè)計(jì),相對(duì)于高級(jí)語(yǔ)言來(lái)東西,盡管花了許多的精力和時(shí)間,我感覺(jué)一切都是值得的。此次的課程設(shè)計(jì),使我更深刻的感受到了編寫(xiě)程序的一般流程:確定程序的主要框?qū)崿F(xiàn)上,不要太在意程序的結(jié)構(gòu)和顯示界面的設(shè)計(jì)。此次的課程設(shè)計(jì),也激發(fā)了我對(duì)編程中遇到的問(wèn)題的思考,有效地提高了我對(duì)匯編
14、細(xì)節(jié),還必須熟練地掌握 debug 命令,這對(duì)程序的調(diào)試是非常重要的。但非常誠(chéng)懇的說(shuō),這個(gè)課程設(shè)計(jì)的完成并不是我個(gè)人的功勞。剛開(kāi)始我參考了網(wǎng)上速度、將代碼簡(jiǎn)化等。但由于時(shí)間有限,其他部分改的不多,但每個(gè)模塊的具體實(shí)現(xiàn)原理我都了解的比較透徹。5.2 系統(tǒng)改進(jìn)此程序雖然基本功能都能實(shí)現(xiàn),那么它是不是很完美呢?絕對(duì)不是。下面談一下系一步的優(yōu)化;其次程序的界面設(shè)計(jì)還不是很漂亮;再者還存在一個(gè)問(wèn)題就是,當(dāng) 78 個(gè)亂序行的字母都落下時(shí),笑臉消失完了,然而字母依然在下落,實(shí)際上應(yīng)該讓打字練習(xí)統(tǒng)計(jì)你所取得的成績(jī),并對(duì)打字情況評(píng)個(gè)級(jí)別等等,總之還有許多可以改善的空間。針對(duì)以上的問(wèn)題,今后的時(shí)間里我會(huì)不斷地完善,以求更好的應(yīng)用于實(shí)際生活中。-13-安徽理工大學(xué)課程設(shè)計(jì)(論文)1李敬兆等編.匯編語(yǔ)言程序設(shè)計(jì).合肥:中國(guó)科學(xué)技術(shù)大學(xué)出版社,2008.92李敬兆等編.匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)教程及習(xí)題解答.合
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 五人投資合同范本
- 加盟裝修公司合同范本
- 化工煤炭采購(gòu)合同范本
- 關(guān)鍵崗位用工合同范本
- 產(chǎn)權(quán)車(chē)位交易合同范本
- 乙方專(zhuān)利合同范本
- 企標(biāo)編制合同范本
- 業(yè)主施工安全合同范例
- 代加工木門(mén)合同范本
- 高中主題班會(huì) 悟哪吒精神做英雄少年-下學(xué)期開(kāi)學(xué)第一課主題班會(huì)課件-高中主題班會(huì)課件
- 2025電力物資檢儲(chǔ)配一體化建設(shè)技術(shù)導(dǎo)則
- 新學(xué)期 開(kāi)學(xué)第一課 主題班會(huì)課件
- 民法典合同編講座
- 2024年青島港灣職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文歷年參考題庫(kù)含答案解析
- 廣西壯族自治區(qū)公路發(fā)展中心2025年面向社會(huì)公開(kāi)招聘657名工作人員高頻重點(diǎn)提升(共500題)附帶答案詳解
- 大學(xué)轉(zhuǎn)專(zhuān)業(yè)高等數(shù)學(xué)試卷
- DBJ51-T 198-2022 四川省既有民用建筑結(jié)構(gòu)安全隱患排查技術(shù)標(biāo)準(zhǔn)
- 公司廠區(qū)保潔培訓(xùn)
- 江蘇省招標(biāo)中心有限公司招聘筆試沖刺題2025
- 2024年防盜門(mén)銷(xiāo)售合同范本
評(píng)論
0/150
提交評(píng)論