版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、課程設(shè)計(jì)報(bào)告目 錄第一章 前言31.1 摘要31.2基本功能要求3第二章 程序設(shè)計(jì)42.1題目基本內(nèi)容42.2系統(tǒng)流程框圖52.3課程設(shè)計(jì)的具體內(nèi)容說明62.4課程設(shè)計(jì)中關(guān)鍵內(nèi)容的分析設(shè)計(jì)說明62.5運(yùn)行截圖6第三章 課程設(shè)計(jì)小結(jié)7參考文獻(xiàn)8附錄:9源程序代碼9第一章 前言1.1 摘要 本次課程設(shè)計(jì),是使用匯編作為開發(fā)語言實(shí)現(xiàn)功能要求??偹苤瑓R編是一個(gè)低級語言,對硬件有很大的依賴性,在使用上也不及高級語言方便,但其在執(zhí)行效率上比高級語言有很大的優(yōu)勢。本次課程設(shè)計(jì),一方面讓我們再次熟悉匯編指令,再次對算法的設(shè)計(jì)有一定的要求。另一方面讓我們對較大匯編程序的編寫有一個(gè)清晰的過程,學(xué)習(xí)把一個(gè)教大問
2、題分解成若干個(gè)小問題,即子程序是一個(gè)良好的編程習(xí)慣。掌握匯編指令,學(xué)習(xí)的理論知識應(yīng)用于解決實(shí)際的問題。1.2基本功能要求顯示一個(gè)數(shù)字的方陣,提示輸入一個(gè)3-5的數(shù)字,根據(jù)輸入的數(shù)字顯示方陣,如輸入4,輸出12341213145111615610987第二章 程序設(shè)計(jì)2.1題目基本內(nèi)容設(shè)計(jì)題目:成績評定具體要求: (1)輸出提示輸入,接受在一定范圍內(nèi)的指定數(shù)字,3到9之間,否則重新輸入,如果是ESC鍵,則推出程序(2)對接受的數(shù)字進(jìn)行,數(shù)字矩陣的顯示2.2系統(tǒng)流程框圖主程序:SHOW循環(huán)顯示子程序: CRT子程序調(diào)整AL值分別得到二位十進(jìn)制個(gè)位,十位值十位是否為 0 0N輸出個(gè)位值子程序返回取得
3、BP中的值向右輸出n數(shù)每輸出一個(gè)自加向下輸出n-1個(gè)數(shù)每輸出一個(gè)自加向左輸出n-1個(gè)數(shù)每輸出一個(gè)自加向右輸出n-2每輸出一個(gè)自加子程序返回 此位填空格輸出Y輸出其值 2.3課程設(shè)計(jì)的具體內(nèi)容說明根據(jù)課題的要求,主要完成一下幾方面的設(shè)計(jì):1顯示提示輸入,提示輸入 ,并保證輸入大于3小于9,否則重新輸入2編寫子程序,用算法實(shí)現(xiàn)每次形如矩形的輸出,如 123412511610987直至輸出完畢3在輸出時(shí),如果是兩位十進(jìn)制數(shù),使用設(shè)計(jì)子程序分別輸出個(gè)位,十位值,若是一位十進(jìn)制數(shù),十位填充空格,輸出。2.4課程設(shè)計(jì)中關(guān)鍵內(nèi)容的分析設(shè)計(jì)說明1、要求輸入介于3到9,如果輸入不符合要求,不能顯示其內(nèi)容,要求重
4、新輸入,直至符合要求方顯示。2、算法實(shí)現(xiàn)并不是件簡單的事情。高級語言可以設(shè)置二維數(shù)組實(shí)現(xiàn),不必考慮其位數(shù),輸出也僅是一個(gè)元素值。而用匯編則遇到定位鼠標(biāo),才是顯示,根據(jù)程序要求,想要達(dá)到程序要求,必須對鼠標(biāo)位置做精確定位。匯編一次只能輸出一個(gè)字符,對于二位十進(jìn)制數(shù)據(jù)時(shí),必須作出處理分別輸出。如果對于一位二進(jìn)制數(shù)不做處理,輸出時(shí)的樣子非常難看。處理方案是:當(dāng)輸出一位十進(jìn)制數(shù)時(shí),在十位位置填充空格,顯示效果良好。3、在匯編語言中,輸出位置是在光標(biāo)的位置顯示,定位鼠標(biāo)位置,在顯示時(shí)沒有選擇DOS和BIOS中斷,而是選擇了教為簡潔的STOSB的“顯式操作數(shù)”形式輸出。 2.4程序運(yùn)行截圖從鍵盤輸入3-9
5、的數(shù)字,截圖如下:例如輸入3,運(yùn)行結(jié)果如以下截圖:例如鍵入4,運(yùn)行結(jié)果如以下截圖:例如鍵入5,運(yùn)行結(jié)果如以下截圖:第三章 課程設(shè)計(jì)感悟課程設(shè)計(jì)是將課本上所學(xué)的理論知識運(yùn)用與解決實(shí)際的問題,對松散的理論知識的一個(gè)集合式運(yùn)用,也是綜合知識,綜合運(yùn)用能力的一個(gè)過程。對知識的掌握和靈活運(yùn)用是一個(gè)很好的考察。由于匯編是大二時(shí)所學(xué),那么長時(shí)間沒有運(yùn)用,忘了好大一部分。當(dāng)要做課程設(shè)計(jì)時(shí),又把整本書又復(fù)習(xí)了一遍,而且我們那本課本是入門級教材。對諸如DOS和BIOS中斷的介紹也只是一個(gè)簡單的敘述,當(dāng)真正要使用某一功能時(shí),我們的課本就捉襟見肘了。因此在課程設(shè)計(jì)的過程中,圖書館是不得不常去的一個(gè)地方了。豐富的網(wǎng)絡(luò)資
6、源也很不錯(cuò),但發(fā)現(xiàn)在查看網(wǎng)上的資料的時(shí)候最大的問題是如果獲得自己想要的東西,搜索時(shí)選擇準(zhǔn)確的關(guān)鍵字是至關(guān)重要,準(zhǔn)確的關(guān)鍵字能讓你很快的找到所需的資料,而一個(gè)不好的關(guān)鍵字則讓你的工作事倍功半。找過自己所需的資料時(shí),篩選自己所需的也是一個(gè)很重要的過程。你搜索的到的資料不一定就適合你,因?yàn)閰R編的平臺依賴性,而且整個(gè)匯編的模式選擇也不同,等等。本次課程設(shè)計(jì),掌握了使用“輕松匯編”這個(gè)匯編編輯器,和在其提供的調(diào)試環(huán)境下做調(diào)試。做調(diào)試的過程中按F7(跟蹤調(diào)試)F8(單步調(diào)試)是一個(gè)以前聽說過學(xué)習(xí)c+和vc的人的F9,F10鍵是光禿禿的,現(xiàn)在真的明白了。調(diào)試是一個(gè)必要必須的過程,這樣才知道你的程序出現(xiàn)問題時(shí)
7、的問題所在。在課程設(shè)計(jì)的過程中,遇到了好多問題,走了不少的彎路,通過努力,最終解決了不少問題。做課程設(shè)計(jì)的過程是為自己修一條路,先前是凸凹不平的道路,等到你做足了功夫,一點(diǎn)點(diǎn)的走過。自己的這條路才寬了,才平了。由于3到5之間的算法原理和3到9之間的算法是一樣的,所以課程設(shè)計(jì)做到了3到9。綜合來說,本次課程設(shè)計(jì)讓我對學(xué)習(xí)匯編有了一個(gè)新的認(rèn)識。附錄:源程序代碼 CODE SEGMENT ASSUME CS:CODE,DS:CODE ORG 100H START: PUSH CS POP DS MOV AX,3 INT 10H ;BIOS中斷,置文本顯示模式 MOV AX,0B800H MOV ES
8、,AX ;定位顯存 MOV DX,OFFSET MSG MOV AH,9 INT 21H ;提示 T0: MOV AH,0 INT 16H ;接收數(shù)據(jù) CMP AL,1BH ;Esc鍵結(jié)束程序 esc(ascii=1Bh) JZ QUIT CMP AL,3 ;數(shù)據(jù)校驗(yàn),保證輸入3al9 JB T0 CMP AL,9 JA T0 MOV AH,0EH ;在Teletype模式下顯示字符 INT 10H ;顯示有效數(shù) SUB AL,30H ;得到十進(jìn)制數(shù)字 PUSH AX MUL AL ;al*al MOV SI,AX ;保存矩陣最大數(shù)到si中 POP AX CBW ;chang byte to
9、word MOV BP,1 ;第一個(gè)元素值 MOV DI,3*80*2 NEXT: MOV CNT1,AX ;輸入數(shù)據(jù)保存到cnt1 DEC AX ;n-1 MOV CNT2,AX MOV CNT3,AX DEC AX ;(n-1)-1 MOV CNT4,AX ADD DI,3*2 CALL SHOW ;輸出矩陣 MOV AX,CNT1 SUB AX,2 SUB DI,3*2 CMP BP,SI JBE NEXT ;bpsi,則繼續(xù)執(zhí)行 MOV AH,0 INT 16H ;等待 JNZ START QUIT: MOV AX,4C00H INT 21H SHOW: ;顯示方陣 MOV CX,CN
10、T1 ;right 向右賦值 M1: CALL CRT INC BP ;下一個(gè)元素?cái)?shù)值 LOOP M1 MOV CX,CNT2 ;down 向下賦值 JCXZ P2 ;cx=0,則轉(zhuǎn)p2處 M2: ADD DI,(80-3)*2 CALL CRT INC BP LOOP M2 MOV CX,CNT3 ;left 向左賦值 JCXZ P2 M3: SUB DI,6*2 ;下一個(gè)元素位置 CALL CRT INC BP LOOP M3 MOV CX,CNT4 ;up 向上賦值 JCXZ P2 M4: SUB DI,(80+3)*2 CALL CRT INC BP LOOP M4 P2: RET CRT: MOV AX,BP AAM ;調(diào)整指令 OR AX,3030H XCHG AH,AL ;交換ah和al CMP AL,0 JNZ P1 MOV AL,20H P1: STOSB ;顯示十位 INC DI MOV AL,AH STOSB
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit2 My schoolbag (Part C)(說課稿)-2024-2025學(xué)年人教PEP版英語四年級上冊
- Unit 1 Life Choices Lesson 3 Your Life Is What You Make It 說課稿-2024-2025學(xué)年高中英語北師大版(2019)必修第一冊
- 2025宅基地的買賣合同協(xié)議書
- 2024六年級英語上冊 Unit 3 My weekend plan課時(shí)3 Let's try Let's talk說課稿 人教PEP
- 2024-2025學(xué)年高中數(shù)學(xué) 開學(xué)第一周 第一章 集合與函數(shù)概念 1.1.1 集合的含義與表示 第一課時(shí) 集合的含義說課稿 新人教A版必修1
- 26手術(shù)臺就是陣地 (說課稿)-2024-2025學(xué)年三年級上冊語文統(tǒng)編版
- 2025冷庫銷售合同范本
- 影視企業(yè)簽訂業(yè)績承諾協(xié)議的財(cái)務(wù)風(fēng)險(xiǎn)控制研究
- Unit 1 Let's be friends!(說課稿)-2024-2025學(xué)年外研版(三起)(2024)英語三年級上冊
- 水景池維修施工方案
- 兒童歌曲彈唱課程標(biāo)準(zhǔn)
- 大學(xué)生心理健康教育全套PPT完整教學(xué)課件
- 安慶匯辰藥業(yè)有限公司高端原料藥、醫(yī)藥中間體建設(shè)項(xiàng)目環(huán)境影響報(bào)告書
- 檔案工作管理情況自查表
- 初中英語人教版 八年級上冊 單詞默寫表 漢譯英
- pcs-9611d-x說明書國內(nèi)中文標(biāo)準(zhǔn)版
- T∕CMATB 9002-2021 兒童肉類制品通用要求
- 工序勞務(wù)分包管理課件
- 中國滑雪運(yùn)動安全規(guī)范
- 畢業(yè)論文-基于51單片機(jī)的智能LED照明燈的設(shè)計(jì)
- 酒廠食品召回制度
評論
0/150
提交評論