版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 課 程 設(shè) 計(jì) 報(bào) 告</p><p> 課程名稱 匯編語(yǔ)言程序設(shè)計(jì) </p><p> 課題名稱 彩條圖形設(shè)計(jì) </p><p> 專 業(yè) 計(jì)算機(jī)科學(xué)與技術(shù) </p><p> 班 級(jí) 計(jì)算機(jī)0902
2、 </p><p> 學(xué) 號(hào) </p><p> 姓 名 </p><p> 指導(dǎo)教師 </p><p> 2011年 12 月 15 日</p>
3、<p> 一、設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求</p><p> 1.設(shè)計(jì)內(nèi)容:通過(guò)本周的課程設(shè)計(jì),學(xué)生能夠鞏固所學(xué)的基礎(chǔ)知識(shí),并能夠使學(xué)生更加熟練運(yùn)用匯編程序設(shè)計(jì)語(yǔ)言來(lái)掌握綜合匯編程序設(shè)計(jì)的方法和過(guò)程,以及為設(shè)計(jì)其它應(yīng)用軟件提供幫助,進(jìn)而提高學(xué)生的軟件設(shè)計(jì)能力。</p><p> 1、編制一計(jì)算比賽成績(jī)的程序,要求完成以下功能:</p><p> (1) 9名
4、評(píng)委,每個(gè)評(píng)委給分范圍為0~10(整數(shù));</p><p> ?。?) 9名評(píng)委給分中,去掉一個(gè)最高分和一個(gè)最低分,剩余7名評(píng)委的平均分即為參賽者的得分(精確到小數(shù)點(diǎn)二位);</p><p> ?。?) 將得分在光標(biāo)位置處顯示出來(lái)。</p><p> 2、編制一程序,要求接收從鍵盤輸入的一個(gè)班的學(xué)生成績(jī),并存放于30字的grade數(shù)組中,各數(shù)據(jù)的格式為:</
5、p><p> 學(xué)號(hào),成績(jī)1,成績(jī)2,…,成績(jī)5</p><p> 然后根據(jù)grade中的學(xué)生成績(jī),把學(xué)生名次填入rank數(shù)據(jù)組中,并顯示出來(lái),格式為:</p><p><b> 學(xué)號(hào),名次</b></p><p> 3、利用INT 1CH(大約每秒中斷18.2次)編寫一個(gè)中斷駐留程序,要求在屏幕的右上角顯示計(jì)算機(jī)中當(dāng)
6、前系統(tǒng)時(shí)間,顯示格式為</p><p> 時(shí):分:秒:1/100秒</p><p> 4、輸入一個(gè)菱形的兩條對(duì)角線長(zhǎng),在屏幕上用‘*’號(hào)畫出一個(gè)彩色的菱形。</p><p> 5、設(shè)置圖形方式并顯示彩條,要求:</p><p> 選擇背景色為藍(lán)色,調(diào)色板為0,然后每行顯示一種顏色,每四行重復(fù)一次,一直到整個(gè)屏幕都顯示出彩條</p
7、><p><b> 2.設(shè)計(jì)要求:</b></p><p> 掌握結(jié)構(gòu)化程序設(shè)計(jì)的主體思想,以自頂向下逐步求精的方法編制程序解決一些實(shí)際的問(wèn)題,為將來(lái)編寫軟件積累一些典型的案例處理經(jīng)驗(yàn)。</p><p> 設(shè)計(jì)正確,方案合理。</p><p> 界面友好,使用方便。</p><p> 程序精
8、煉,結(jié)構(gòu)清晰。</p><p> 設(shè)計(jì)報(bào)告5000字以上,含程序設(shè)計(jì)說(shuō)明,用戶使用說(shuō)明,源程序清單及程序框圖。</p><p><b> 上機(jī)演示。</b></p><p> 按學(xué)號(hào)順序選課題號(hào),并在規(guī)定的時(shí)間內(nèi)獨(dú)自完成相關(guān)課題的C源程序編寫、調(diào)整和運(yùn)行。源程序及編譯生成各文件均保存在軟盤中;</p><p>
9、按本任務(wù)書的要求,按附錄的要求編寫《課程設(shè)計(jì)報(bào)告》(Word文檔格式)。并用A4的復(fù)印紙打印并裝訂; </p><p><b> 二、進(jìn)度安排</b></p><p><b> 目錄</b></p><p> 一、課題的主要功能…………………………………………………………………1</p><p&
10、gt; 二、課題的功能模塊的劃分………………………………………………………1</p><p> 三、主要功能實(shí)現(xiàn)………………………………………………………………………3</p><p> 四、程序調(diào)試………………………………………………… …… ……………………5</p><p> 五、總結(jié)………………………………………………………………………………………6
11、</p><p> 六、附錄(原程序)………………………………………………………………… 8</p><p><b> 一、課題的主要功能</b></p><p> 本課題的主要功能是設(shè)置圖形方式并顯示彩條,要求:選擇背景色為藍(lán)色,依次顯示出四種不同的顏色,同時(shí)調(diào)色板為0,然后每行顯示一種顏色,每四行重復(fù)一次,一直到整個(gè)屏幕都顯示出彩條。
12、</p><p><b> 二、課題的功能模塊</b></p><p> 設(shè)置圖形方式并顯示彩條由以下程序模塊完成:</p><p> 整個(gè)程序由4個(gè)功能模塊構(gòu)成,分別是設(shè)置顏色模塊、設(shè)置調(diào)色板模塊、設(shè)置彩帶寬度模塊、設(shè)置顏色種類模塊和退出菜單模塊,他們之間的關(guān)系如下模塊圖所示:</p><p><b>
13、 主要功能的實(shí)現(xiàn)</b></p><p><b> 功能模塊的分析</b></p><p><b> 部分功能模塊如下:</b></p><p> 1、顯示模塊,代碼如下:</p><p> program segment</p><p> assum
14、e cs:program</p><p><b> start:</b></p><p> main proc far</p><p> mov ah, 00h ;調(diào)用INT 10H 的功能號(hào)</p><p> mov al, 10h ;選擇顯示方式10h(16色圖形)</p><p>
15、 int 10h ;調(diào)用INT 10H中斷</p><p> ;-------設(shè)置顯示方式----------------</p><p> 在此功能上主要是要如何來(lái)顯示圖形方案,通過(guò)程序的調(diào)用,來(lái)達(dá)到背景色為藍(lán)色,同時(shí)調(diào)色板為0,然后每行顯示一種顏色,每四行重復(fù)一次,一直到整個(gè)屏幕都顯示出彩條</p><p><b> 2、設(shè)置調(diào)用模塊&l
16、t;/b></p><p> MOV AH, 10H ;調(diào)用INT 10H 的功能號(hào)</p><p> MOV AL, 00H ;設(shè)置調(diào)色板寄存器</p><p> MOV BH, 01H ;背景設(shè)為藍(lán)色</p><p> MOV BL, 1 ;選擇1號(hào)調(diào)色板</p><p> INT 10H
17、 ;調(diào)用INT 10H中斷</p><p> 3、設(shè)置彩條寬度并確定彩條顏色</p><p> mov bh, 0 ;顯存的第0頁(yè)</p><p> mov cx, 0 ;起始列號(hào)為0列</p><p> mov dx, 0 ;起始行號(hào)為0行</p><p> mov si, 0 ;設(shè)置彩條
18、的寬度</p><p><b> follow: </b></p><p><b> mov bl,0</b></p><p><b> color:</b></p><p> inc bl ;設(shè)置彩條的顏色</p><p><b&
19、gt; mov si,0</b></p><p> cmp bl,5 ;設(shè)置彩條的顏色種類</p><p><b> je follow</b></p><p> 因?yàn)轭}中是要求四種顏色循環(huán),所以在顏色種類上我設(shè)置了深藍(lán)、綠、淺藍(lán)、紅四種顏色,并在此之間設(shè)置了彩條的寬度,不然不能達(dá)到彩條循環(huán)的目的。</p>
20、<p><b> 4、判斷是否滿屏</b></p><p><b> inc cx</b></p><p> cmp cx, 650 ;是否達(dá)到一行最大值</p><p><b> jne line</b></p><p> mov cx, 0 ;起始列
21、號(hào)為0列</p><p><b> inc si</b></p><p><b> cmp si,10</b></p><p><b> je color</b></p><p><b> inc dx</b></p><p&g
22、t; cmp dx, 350 ;是否達(dá)到列的最大值</p><p> jne line </p><p> mov ax,4c00h</p><p><b> int 21h</b></p><p><b> main endp</b></p><p>
23、program ends</p><p><b> end start</b></p><p> 在這個(gè)程序中,當(dāng)所有的彩條達(dá)到滿屏?xí)r,程序才會(huì)停止,所以必須判斷是否達(dá)到了滿屏,如果沒(méi)有,則彩條由深藍(lán)、綠、淺藍(lán)、紅四種顏色依次循環(huán),直到程序結(jié)束為止。</p><p><b> 四、程序調(diào)試</b></p>
24、<p> 此次實(shí)驗(yàn)中,我遇到了很多不懂的問(wèn)題,不過(guò)通過(guò)老師和同學(xué)的幫助,最終了解并掌握了彩條圖形設(shè)計(jì)的方法。</p><p> 首先是像素設(shè)置問(wèn)題,要用到調(diào)色板,判斷是否達(dá)到極值。再就是設(shè)置顯示方式,很多的小指令不是很熟悉,翻過(guò)課本之后才知道。還有就是彩條顏色,要用4種不同顏色顯示,設(shè)計(jì)過(guò)程中經(jīng)常出錯(cuò),但最終經(jīng)過(guò)不斷的調(diào)試和修改,終于按題目要求實(shí)現(xiàn)了功能。</p><p>
25、;<b> 最后屏幕顯示為:</b></p><p><b> 五、總結(jié)</b></p><p> 通過(guò)一周的課程設(shè)計(jì),我懂得了很多,也感悟了很多。學(xué)習(xí)了一期的匯編語(yǔ)言,一到實(shí)驗(yàn)設(shè)計(jì)中,就感到如此的無(wú)力,有如冰山一角。自己平時(shí)學(xué)的東西實(shí)在是太少了</p><p> 同時(shí)我覺的自己對(duì)信息的提取和自學(xué)的能力十分的欠缺,
26、就像在圖書館查資料的時(shí)候,這種特點(diǎn)表現(xiàn)的十分的明顯,同時(shí)我的實(shí)踐能力真的是十分的差勁,在實(shí)踐的時(shí)候,我覺得自己的心態(tài)真的不是很好,就像自己曾今信仰的一樣,任何事情都是自己整體的反映,任何時(shí)候都在體現(xiàn)自己的整體水平。</p><p> 本次匯編語(yǔ)言課程設(shè)計(jì)是利用我們平時(shí)所學(xué)的匯編知識(shí)編寫一個(gè)彩條圖形,剛拿到題目的時(shí)候還有點(diǎn)擔(dān)憂。由于平時(shí)匯編語(yǔ)言的知識(shí)掌握的并不牢固,并且也沒(méi)有過(guò)像這樣的為期一周的匯編語(yǔ)言實(shí)踐課程。
27、但當(dāng)靜下心來(lái)仔細(xì)把問(wèn)題讀懂和頭腦中有了大致思路的時(shí)候,這種擔(dān)憂就完全消失了。其實(shí)這次課程設(shè)計(jì)并不要求你把書上各種指令及其工能掌握的很好并且能熟練的運(yùn)用匯編語(yǔ)言編程,而恰恰是利用這次課程設(shè)計(jì)的機(jī)會(huì)來(lái)提高這方面的能力。這就是一個(gè)心態(tài)問(wèn)題,看你有沒(méi)有擺正心態(tài),看你有沒(méi)有面對(duì)挫折的勇氣,如果一開始就沒(méi)擺正心態(tài),思維就會(huì)堵塞,后面就更無(wú)法做下去了。這次課程設(shè)計(jì)讓我更加懂得以后在面臨困難與挫折的時(shí)候要有平和的心態(tài),要有冷靜的頭腦,坦然的面對(duì),這樣才
28、能解決問(wèn)題。有了整體思路后,編寫程序就變得簡(jiǎn)單的多了,但也遇到了很多的問(wèn)題,后經(jīng)過(guò)老師的幫助和同學(xué)的討論,終于又進(jìn)一步完成了功能設(shè)計(jì)需求,簡(jiǎn)化了源程序代碼,使程序結(jié)構(gòu)更加緊湊明了。</p><p> 通過(guò)本次匯編語(yǔ)言課程設(shè)計(jì),也讓我更加明白實(shí)踐的重要性,如果整天的學(xué)習(xí)課本上的理論知識(shí)而不拿來(lái)用那肯定是很煩的,況且匯編語(yǔ)言這門課本身學(xué)起來(lái)就很煩,尤其是要去理解各種指令的功能,還要學(xué)習(xí)相應(yīng)的硬件知識(shí)。再者,學(xué)習(xí)理論
29、知識(shí)的目的還是要拿來(lái)運(yùn)用,通過(guò)實(shí)踐來(lái)鞏固所學(xué)的理論知識(shí)。并且通過(guò)這次課程設(shè)計(jì)實(shí)踐,讓我一改往日的厭學(xué)情緒,尤其是當(dāng)程序運(yùn)行正確的時(shí)候,那種來(lái)自內(nèi)心的成就感,讓我更加有信心學(xué)好匯編語(yǔ)言了。</p><p> 通過(guò)本次課程設(shè)計(jì)讓我更深刻的明白學(xué)習(xí)要不恥下問(wèn),遇到不懂得問(wèn)題要敢于向老師提問(wèn),沒(méi)有什么不好意思的,不懂就是不懂。如果遇到問(wèn)題了還坐那里發(fā)呆,那肯定完成不了任務(wù)。問(wèn)老師問(wèn)題,老師會(huì)幫你盡力解答,自己也需要努力
30、。還有遇到問(wèn)題多和同學(xué)探討,所謂“獨(dú)學(xué)而無(wú)友,則孤陋而寡聞”就是這個(gè)道理,或許就在和同學(xué)的討論過(guò)程中,點(diǎn)開了你的思路,問(wèn)題就迎刃而解了。我這次能夠順利的完成程序設(shè)計(jì)也是得益于老師和同學(xué)的幫組,在這里我要真心的感謝他們。</p><p> 總之,這次匯編語(yǔ)言課程設(shè)計(jì)讓我受益匪淺,我不但收獲了知識(shí),提高了能力,而且學(xué)到了很多人生的哲理。對(duì)于學(xué)習(xí)匯編語(yǔ)言這門專業(yè)課,以后要多看程序,多嘗試編寫程序,在實(shí)踐的過(guò)程中發(fā)現(xiàn)問(wèn)
31、題,并及時(shí)解決問(wèn)題,讓自己更上一層樓。</p><p><b> 六、附錄(原程序)</b></p><p> program segment</p><p> assume cs:program</p><p><b> start:</b></p><p> m
32、ain proc far</p><p> mov ah, 00h ;調(diào)用INT 10H 的功能號(hào)</p><p> mov al, 10h ;選擇顯示方式10h(16色圖形)</p><p> int 10h ;調(diào)用INT 10H中斷</p><p> ;-------設(shè)置顯示方式----------------</p
33、><p> MOV AH, 10H ;調(diào)用INT 10H 的功能號(hào)</p><p> MOV AL, 00H ;設(shè)置調(diào)色板寄存器</p><p> MOV BH, 01H ;背景設(shè)為藍(lán)色</p><p> MOV BL, 0 ;選擇0號(hào)調(diào)色板</p><p> INT 10H ;調(diào)用INT 10H中斷
34、</p><p> mov bh, 0 ;顯存的第0頁(yè)</p><p> mov cx, 0 ;起始列號(hào)為0列</p><p> mov dx, 0 ;起始行號(hào)為0行</p><p> mov si, 0 ;設(shè)置彩條的寬度</p><p><b> follow: </b>
35、;</p><p><b> mov bl,0</b></p><p><b> color:</b></p><p> inc bl ;設(shè)置彩條的顏色</p><p><b> mov si,0</b></p><p> cmp bl
36、,5 ;設(shè)置彩條的顏色種類</p><p><b> je follow</b></p><p><b> line: </b></p><p> mov ah, 0ch ;寫像素點(diǎn)</p><p> mov al, bl ;像素的顏色</p><p><b
37、> int 10h</b></p><p> ;------寫像素-----------------------</p><p><b> inc cx</b></p><p> cmp cx, 650 ;是否達(dá)到一行最大值</p><p><b> jne line</b&g
38、t;</p><p> mov cx, 0 ;起始列號(hào)為0列</p><p><b> inc si</b></p><p><b> cmp si,10</b></p><p><b> je color</b></p><p><b
39、> inc dx</b></p><p> cmp dx, 350 ;是否達(dá)到列的最大值</p><p> jne line </p><p> mov ax,4c00h</p><p><b> int 21h</b></p><p><b> m
40、ain endp</b></p><p> program ends</p><p><b> end start</b></p><p> 計(jì)算機(jī)科學(xué)與技術(shù)系課程設(shè)計(jì)評(píng)分表</p><p> 課程名稱: 彩條圖形設(shè)計(jì) </p><p> 教師簽名
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- vga橫豎彩條發(fā)生器課程設(shè)計(jì)總結(jié)報(bào)告
- vb各種圖形設(shè)計(jì)-課程設(shè)計(jì)報(bào)告
- 匯編語(yǔ)言課程設(shè)計(jì)----小車動(dòng)態(tài)圖形設(shè)計(jì)
- 匯編語(yǔ)言課程設(shè)計(jì)報(bào)告
- 匯編語(yǔ)言課程設(shè)計(jì)報(bào)告
- 匯編語(yǔ)言課程設(shè)計(jì)報(bào)告a
- 匯編語(yǔ)言課程設(shè)計(jì)報(bào)告
- 計(jì)算機(jī)圖形課程設(shè)計(jì)報(bào)告
- 《調(diào)整圖形》課程設(shè)計(jì)
- 匯編課程設(shè)計(jì)報(bào)告---顯示系統(tǒng)時(shí)間
- 彩條信號(hào)顯示控制器的設(shè)計(jì)eda技術(shù)課程設(shè)計(jì)
- 匯編課程設(shè)計(jì)報(bào)告--- 計(jì)時(shí)器
- 匯編課程設(shè)計(jì)報(bào)告-系統(tǒng)時(shí)間顯示
- 匯編課程設(shè)計(jì)報(bào)告--計(jì)時(shí)器
- 圖形圖像處理課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告-----ibm匯編電子鐘
- 匯編語(yǔ)言課程設(shè)計(jì)報(bào)告---打字游戲
- 計(jì)算機(jī)圖形學(xué)課程設(shè)計(jì)報(bào)告
- c語(yǔ)言圖形時(shí)鐘課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告
- java課程設(shè)計(jì)----課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論