




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、匯編語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告題目: 模擬電子琴(音樂播放項(xiàng)目子程序) 指導(dǎo)老師: 學(xué)生姓名: 學(xué) 號(hào): 專 業(yè): 班 級(jí): 2011年6月20日目錄:(一)程序設(shè)計(jì)任務(wù) 1.1題目···························3 1.2要求·······
2、;····················3 (二)課題背景 2.1匯編語(yǔ)言的優(yōu)點(diǎn)·················3 2.2課題意義········
3、···············32.3程序設(shè)計(jì)目的···················3(三)運(yùn)行環(huán)境·············
4、········4 (四)程序概要設(shè)計(jì) 4.1課程設(shè)計(jì)基礎(chǔ)知識(shí)(附圖)········4,5 4.2程序設(shè)計(jì)思想···················6 (五)程序設(shè)計(jì)流程圖及功能圖·····
5、3;·6,7 (六)程序代碼及其說明·············8,9 (七)實(shí)現(xiàn)界面(圖)················10,11 (八)總結(jié)與體會(huì)············
6、83;······12 (九)參考文獻(xiàn)·····················12(一) 程序設(shè)計(jì)任務(wù):1.1題目:模擬電子琴1.2要求:設(shè)計(jì)一個(gè)可模擬發(fā)聲的電子琴程序,并實(shí)現(xiàn)功能,附加顯示。(二) 課題背景: 2.1匯編語(yǔ)言的優(yōu)點(diǎn):匯編語(yǔ)言由于采用了助記符號(hào)來編寫程序,比用機(jī)器語(yǔ)言的二進(jìn)制代碼編程要方便些,在一定程度上簡(jiǎn)化了
7、編程過程。匯編語(yǔ)言的特點(diǎn)是用符號(hào)代替了機(jī)器指令代碼,而且助記符與指令代碼一一對(duì)應(yīng),基本保留了機(jī)器語(yǔ)言的靈活性。使用匯編語(yǔ)言能面向機(jī)器并較好地發(fā)揮機(jī)器的特性,得到質(zhì)量較高的程序。用匯編語(yǔ)言等非機(jī)器語(yǔ)言書寫好的符號(hào)程序稱為源程序,運(yùn)行時(shí)匯編程序要將源程序翻譯成目標(biāo)程序。目標(biāo)程序是機(jī)器語(yǔ)言程序,它一經(jīng)被安置在內(nèi)存的預(yù)定位置上,就能被計(jì)算機(jī)的CPU處理和執(zhí)行。匯編語(yǔ)言像機(jī)器指令一樣,是硬件操作的控制信息,因而仍然是面向機(jī)器的語(yǔ)言,使用起來還是比較繁瑣費(fèi)時(shí),通用性也差。但是,匯編語(yǔ)言用來編制系統(tǒng)軟件和過程控制軟件,其目標(biāo)程序占用內(nèi)存空間少,運(yùn)行速度快,有著高級(jí)語(yǔ)言不可替代的用途。設(shè)計(jì)一個(gè)可模擬發(fā)聲的電子
8、琴程序,作為音樂播放項(xiàng)目的子程序。2.2課題意義:有人這樣說過:時(shí)間多么重要,錯(cuò)過了就永遠(yuǎn)錯(cuò)過。時(shí)間多么堅(jiān)定,因?yàn)闀r(shí)間從不回頭。時(shí)間多么關(guān)鍵,就在那一刻把握。時(shí)間就是一切,作為學(xué)生的我們更應(yīng)該有很強(qiáng)的時(shí)間意識(shí),剛剛學(xué)完匯編語(yǔ)言,借此機(jī)會(huì)用匯編語(yǔ)言編制了一個(gè)時(shí)鐘的程序。進(jìn)一步鞏固所學(xué)的知識(shí),熟練應(yīng)用匯編語(yǔ)言進(jìn)行一些程序的制作,進(jìn)一步培養(yǎng)對(duì)編程的興趣。為以后的工作打下基礎(chǔ)。檢驗(yàn)自己的學(xué)習(xí)成果。我自己學(xué)到的知識(shí)應(yīng)用到實(shí)際當(dāng)中,做一些對(duì)自己生活和學(xué)習(xí)有用的程序,達(dá)到學(xué)以至用的目的。2.3程序設(shè)計(jì)目的:利用匯編功能實(shí)現(xiàn)一個(gè)小的電子琴程序,主要功能是根據(jù)鍵盤上的按鍵發(fā)出不同的音符,每個(gè)音符由它的音調(diào)和頻率
9、以及時(shí)間來決定。(3) 運(yùn)行環(huán)境: 硬件:8086以上CPU,內(nèi)存256M以上。 軟件:WINDOWS操作系統(tǒng),MASM,LINK匯編編譯鏈接件。(四)程序概要設(shè)計(jì):4.1課程設(shè)計(jì)基礎(chǔ)知識(shí)(附圖):8253A內(nèi)部結(jié)構(gòu):8253外部引腳圖: 計(jì)數(shù)器內(nèi)部結(jié)構(gòu):8253A端口地址: 4.2程序設(shè)計(jì)思想:音樂發(fā)聲是根據(jù)頻率和它的延時(shí)實(shí)現(xiàn)的,不同的音符有不同的頻率和時(shí)間,根據(jù)任務(wù)要求先設(shè)計(jì)一個(gè)可視菜單,應(yīng)用系統(tǒng)顯示功能,設(shè)置一定的顯示方式,在對(duì)每個(gè)音符1-7定義應(yīng)有的頻率和時(shí)間,插入發(fā)聲子程序,利用DOS功能輸入相應(yīng)數(shù)字發(fā)出相應(yīng)的音,整個(gè)程序利用棧來實(shí)現(xiàn),這樣就做成了一個(gè)簡(jiǎn)單的模擬電子琴程序。顯示菜單(
10、四)程序設(shè)計(jì)流程圖:實(shí)現(xiàn)功能健康離開家牛津布定義時(shí)間定義頻率編譯音符設(shè)置文本方式 程序設(shè)計(jì)功能圖:開 始清 屏顯示提示 輸入NAL=1?NYAL=2?NY發(fā)出DO聲 發(fā)出RI聲AL=3? NYAL=4? Y發(fā)出MI聲AL=5? 播放童年播放童年 N發(fā)出FA聲N NYAL=6? NY發(fā)出SO聲AL=7? Y發(fā)出LA聲 發(fā)出SI聲 NAL=回車? Y 退出程序 (六)程序代碼及其說明:EXTRNSOUND:FAR,CLEANMP:FAR,SET:FAR ;當(dāng)代碼段長(zhǎng)時(shí),不能放在同一段時(shí)要標(biāo)示為FARpublicmpa;模擬電子鋼琴程序STACKSEGMENTPARASTACK'STACK&
11、#39;定義堆棧段DB64 DUP('STACK')STACKENDSDSEGSEGMENTPARA'DATA'定義數(shù)據(jù)段WARDB 13,10,5 DUP(' '),'WARING ! Please press the right number!',13,10,'$'TsDB 5 DUP(' '),'Press the key 1-7 to Play the panio!',13,10DB 5 DUP(' '),'Press Enter to exit to
12、 the main menu!','$'DSEG ENDSCODESEGMENTPARA'CODE'定義代碼段ASSUME CS:CODE,DS:DSEG,SS:STACKMpa proc farpushdi;寄存器入棧push DSpush DXpush CXpush BXpush AXSTART:MOVAX,DSEG;初始化數(shù)據(jù)段MOVDS,AX;MOVaH, 0 ;設(shè)置顯示方式為2(文本80*25);MOVAL,2 ;INT10H;*顯示宏定義DISPLAYMACRO b LEA DX,b MOV AH,9 INT 21H ENDM SRR:CAL
13、LCLEANMPCALLSETDISPLAYTs;顯示提示play:MOVAH,7INT21H;開始演奏cmpal,0dhjeexmp;退出程序CMPAL,'1'JEONECMPAL,'2'JETWO CMPAL,'3'JETHREECMPAL,'4'JEFOURCMPAL,'5'JEFIVECMPAL,'6'JESIXcmpal,'7'jeSEVENDISPLAYWAR;輸入錯(cuò)誤提示jmpplayONE:movdi,262JMPMCCTWO:movdi,294JMPMCCTHREE
14、:movdi,330JMPMCCFOUR:movdi,349JMPMCCFIVE:movdi,392JMPMCCSIX:movdi,440jmpmccSEVEN:movdi,494jmpmccMCC:movbx,400CALLSOUNDJMPplayexmp:pop ax;寄存器出棧pop bxpop cxpop dxpop dspopdiret;程序返回mpaENDPCODEENDSENDSTART(7) 實(shí)現(xiàn)界面(圖)(八)總結(jié)與體會(huì):以前從沒有學(xué)過關(guān)于匯編語(yǔ)言的知識(shí),起初學(xué)起來感覺很有難度。當(dāng)知道要做課程設(shè)計(jì)的時(shí)候心里面感覺有些害怕和擔(dān)心, 擔(dān)心自己不會(huì)或者做不好。但是當(dāng)真的要做的時(shí)候也只好進(jìn)自己作大的努力去做, 做到自己最好的。我們?cè)谶@個(gè)過程中有很多自己的感受,我想很多同學(xué)都會(huì)和我有一樣的感受,那就是感覺匯編語(yǔ)言真的是很神奇,很有意思。我們從開始的擔(dān)心和害怕漸漸變成了享受,享受著匯編帶給我們的快樂??粗约鹤龀鰜淼臇|西,心里面的感覺真的很好。雖然我們做的東西都還很簡(jiǎn)單,但是畢竟是我們自己親手做出來的。很有成就感。 在這次課程設(shè)計(jì)中,我真正體會(huì)到了合作的重要性,遇到很多問題時(shí),當(dāng)我看書查資料不能解決時(shí),這是去找同學(xué)討論一下,收獲
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 茶飲作為健康生活的核心力量
- 營(yíng)銷效果評(píng)估數(shù)據(jù)驅(qū)動(dòng)的決策優(yōu)勢(shì)
- 職場(chǎng)心理健康與工作場(chǎng)所的和諧共融
- 職場(chǎng)人士的營(yíng)養(yǎng)策略與工作效率優(yōu)化
- 2025年紡織、服裝、鞋帽批發(fā)服務(wù)項(xiàng)目建議書
- 沖壓模具設(shè)計(jì)答辯
- 環(huán)保企業(yè)資源回收運(yùn)營(yíng)計(jì)劃
- 2024-2025學(xué)年第一學(xué)期小學(xué)心理健康教育教研組工作計(jì)劃
- 購(gòu)房定金與購(gòu)房合同的關(guān)系
- 購(gòu)房補(bǔ)助協(xié)議
- 《骨膜下注射技術(shù)》課件
- 2025-2030中國(guó)前列腺癌篩查行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略研究報(bào)告
- 137案例黑色三分鐘生死一瞬間事故案例文字版
- 四川省2024年全國(guó)高中數(shù)學(xué)聯(lián)賽(預(yù)賽)試題(解析版)
- 眼的解剖結(jié)構(gòu)與生理功能課件
- 學(xué)生安全協(xié)議書5篇
- 2020年廣東省中考物理試卷分析
- 脫氨蒸氨工段操作規(guī)程
- 城市設(shè)計(jì)導(dǎo)則案例
- 液壓絞車設(shè)計(jì)課件
- 實(shí)習(xí)手冊(cè)表格
評(píng)論
0/150
提交評(píng)論