微機(jī)原理與匯編教學(xué)實習(xí)報告_第1頁
微機(jī)原理與匯編教學(xué)實習(xí)報告_第2頁
微機(jī)原理與匯編教學(xué)實習(xí)報告_第3頁
微機(jī)原理與匯編教學(xué)實習(xí)報告_第4頁
微機(jī)原理與匯編教學(xué)實習(xí)報告_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、天津農(nóng)學(xué)院計算機(jī)科學(xué)與信息工程系微機(jī)原理與匯編教學(xué)實習(xí)報告實習(xí)名稱: 用匯編語言實現(xiàn)音樂程序設(shè)計 專 業(yè): 計算機(jī)科學(xué)與技術(shù)專業(yè) 班 級: 2008級計算機(jī)科學(xué)與技術(shù)專業(yè)1班 學(xué) 號: 姓 名: 指導(dǎo)教師: 成 績: 2011年1月4日目 錄1 教學(xué)實習(xí)的內(nèi)容 頁碼2 教學(xué)實習(xí)的目的 頁碼3 教學(xué)實習(xí)設(shè)計介紹 頁碼3.1 設(shè)計題目 頁碼3.2 設(shè)計目標(biāo) 頁碼3.3 系統(tǒng)的主要功能 頁碼3.4 系統(tǒng)開發(fā)與調(diào)試過程 頁碼3.4.1 程序設(shè)計準(zhǔn)備階段 頁碼3.4.2 程序設(shè)計階段 頁碼3.4.3 程序調(diào)試、測評、試運行階段頁碼3.5 技術(shù)要點介紹 頁碼4 總結(jié)與體會 頁碼(要求:目錄中不能出現(xiàn)4級標(biāo)

2、題,宋體加粗,四號字,1.5倍行距。)(報告正文部分):(要求:正文部分一律用小四號字,宋體,1.5倍行距,首行縮進(jìn)兩個字符。一級大標(biāo)題靠左,加粗。二、三、四級標(biāo)題靠左,不加粗。)1 教學(xué)實習(xí)的內(nèi)容綜合運用學(xué)過的分支結(jié)構(gòu)程序的編制方法,比較與轉(zhuǎn)移指令,循環(huán)控制指令,主子結(jié)構(gòu)程序的設(shè)計思想和方法,學(xué)習(xí)綜合程序的設(shè)計、編制及調(diào)試。2 教學(xué)實習(xí)的目的配合微機(jī)原理與匯編語言程序設(shè)計的理論學(xué)習(xí),通過系統(tǒng)的實踐教學(xué)訓(xùn)練,培養(yǎng)獨立分析問題和解決問題的能力,掌握匯編語言的編程和程序調(diào)試環(huán)境,鍛煉一定的軟硬件開發(fā)能力。3 教學(xué)實習(xí)設(shè)計介紹3.1 設(shè)計題目 音樂演奏_樂曲演奏3.2 設(shè)計目標(biāo)編寫一個音樂程序,要求

3、:按數(shù)字“1”,唱樂曲“瑪麗有只小羔羊”;按數(shù)字“2”,唱樂曲“太湖船”;按數(shù)字“3”,唱樂曲 “祝福歌”;按數(shù)字“4”,唱樂曲 “亞洲雄風(fēng)”;按"Q"鍵,退出。3.3 系統(tǒng)的主要功能利用發(fā)聲程序,可以編寫演奏樂曲的程序。樂曲是按照一定的高低、強弱和長短關(guān)系組成的音調(diào),在一首樂曲中,每個音符的音高和音長與頻率和節(jié)拍有關(guān)。組成樂曲的每個音符的頻率值和持續(xù)時間是樂曲程序發(fā)聲所需要的兩個數(shù)據(jù)。本系統(tǒng)基于上述原理,根據(jù)音調(diào)與頻率的關(guān)系,按照樂曲的曲譜將每個音符的頻率和持續(xù)時間定義成兩個數(shù)據(jù)表,然后依次取出表中的頻率值和時間值,調(diào)用sounding程序用計算機(jī)揚聲器唱歌曲。3.4 系

4、統(tǒng)開發(fā)與調(diào)試過程3.4.1 程序設(shè)計準(zhǔn)備階段為演奏的樂曲定義一個頻率表和一個節(jié)拍時間表,在程序數(shù)據(jù)段中分別由MUS_FREG和MUS_TIME 所指向的數(shù)組;3.4.2 程序設(shè)計階段stack SEGMENT stack dw 20H dup(?)stack ends DATA SEGMENTmsg1 DB 0DH,0AH,'WELCOME YOU TO COME HERE!$'msg2 DB 0DH,0AH,'this is a music program!$'msg3 DB 0DH,0AH,'please select!$'msg4 DB 0

5、DH,0AH,'INPUT ERROR!$'msg5 DB 0DH,0AH,'PLEASE INPUT AGAIN!$'MUSLIST DB 0DH,0AH,'1 MUSIC1' DB 0DH,0AH,'2 MUSIC2' DB 0DH,0AH,'3 MUSIC3' DB 0DH,0AH,'4 MUSIC4' DB 0DH,0AH,'Q EXIT' db 0dh,0ah,'$'MUS_FREG1 DW 330,294,262,294,3 DUP (330) DW 3

6、DUP (294),330,392,392 DW 330,294,262,294,4 DUP (330) DW 294,294,330,294,262,0MUS_TIME1 DW 6 DUP (25*8),50*8 DW 2 DUP (25*8,25*8,50*8) DW 12 DUP (25*8),100*8MUS_FREG2 DW 330,392,330,294,330,392,330,294,330 DW 330,392,330,294,262,294,330,392,294 DW 262,262,220,196,196,220,262,294,332,262,0MUS_TIME2 DW

7、 3 DUP(50),25,25,50,25,25,100 DW 2 DUP(50,50,25,25),100 DW 3 DUP(50,25,25),100MUS_FREG3 DW 262,262,294,262,349 DW 330,262,262,294,262 DW 392,349,262,262,523 DW 440,349,262,262,466 DW 466,440,262,392,349,0MUS_TIME3 DW 50,50,100,100,100 DW 100,100,50,50,100,100 DW 100,100,100,50,50,100 DW 100,100,100,

8、100,100,50 DW 50,100,100,100,100,100MUS_FREG4 DW 262,196,262,294,330,262,262,392,262,330,294,262,294 DW 262,196,262,294,330,262,262,440,262,330,294,262,294,392 DW 262,196,262,294,330,262,262,392,262,330,294,262,294 DW 262,196,262,294,330,262,220,262,440,392,392,392 DW 392,262,392,392,349,349,330,262

9、,392,262,294,330 DW 392,523,392,392,440,440,392,349,330,262,294,294,262 DW 392,392,392,262,440,392,392,349,392,330,262,392,262,294 DW 392,392,392,262,392,440,440,440,392,349,330,262,294,294,262,0MUS_TIME4 DW 50,25,25,18,7,25,25,25,25,25,18,7,100 DW 50,25,25,18,7,50,25,25,25,25,18,7,25,75 DW 50,25,25

10、,18,7,50,25,25,25,25,18,7,100 DW 50,25,25,18,7,75,25,25,13,25,12,100 DW 50,25,25,13,12,75,25,25,25,18,7,100 DW 50,25,25,13,12,50,13,12,25,25,25,13,112 DW 25,25,13,37,13,25,62,25,25,25,25,25,13,62 DW 25,25,13,37,13,25,12,25,13,12,25,25,25,13,112 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ss:stack

11、START:MOV AX,DATA MOV DS,AX MOV DX,OFFSET msg1 MOV AH,09 INT 21H MOV DX,OFFSET msg2 MOV AH,09 INT 21H MOV DX,OFFSET msg3 MOV AH,09 INT 21H mov dx,offset MUSLIST mov ah,09 int 21h ;顯示提示信息 mov ah,01h int 21h ;MOV DL,AL CMP al,31H JE MUSIC1 CMP al,32H JE MUSIC2 CMP al,33H JE MUSIC3 CMP al,34H JE MUSIC4

12、 CMP al,51H JE EXIT ;比較所選數(shù) ERROR: MOV DX,OFFSET msg4 MOV AH,09 INT 21H MOV DX,OFFSET msg5 MOV AH,09 INT 21H JMP START EXIT:JMP ENDING MUSIC1:MOV SI,OFFSET MUS_FREG1 MOV BP,OFFSET MUS_TIME1 REPT1 : MOV DI,SI CMP DI,0 JE ENDING MOV BX,DS:BP CALL SOUNDING ADD SI,2 ADD BP,2 JMP REPT1 MUSIC2:MOV SI,OFFSE

13、T MUS_FREG2 MOV BP,OFFSET MUS_TIME2 jmp REPT1 MUSIC3:MOV SI,OFFSET MUS_FREG3 MOV BP,OFFSET MUS_TIME3 jmp REPT1 MUSIC4:MOV SI,OFFSET MUS_FREG4 MOV BP,OFFSET MUS_TIME4 jmp REPT1 ENDING:MOV AH,4CH INT 21H SOUNDING PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX PUSH DI MOV AL,0B6H OUT 43H,AL MOV DX,12H MOV A

14、X,34DCH DIV DI OUT 42H,AL MOV AL,AH OUT 42H,AL IN AL,61H MOV AH,AL OR AL,3 OUT 61H,AL DELAY:MOV CX,1000 DL10:MOV DI,CX MOV CX,2000 DL001:LOOP DL001 MOV CX,DI LOOP DL10 DEC BX JNZ DELAY MOV AL,AH OUT 61H,AL POP DI POP DX POP CX POP BX POP AX RETSOUNDING ENDPCODE ENDS END START3.4.3 程序調(diào)試、測評、試運行階段1.用記事本或EDIT編輯程序在磁盤上建立源程序。2.源文件建立后,用MASM程序?qū)υ次募M(jìn)行匯編,匯編后產(chǎn)生二進(jìn)制的目標(biāo)文件(OBJ文件)。3.使用連接程序LINK把文件轉(zhuǎn)換為可執(zhí)行的EXE文件。4.在建立了.EXE文件之后,就可以直接從DOS執(zhí)行程序。3.5 技術(shù)要點介紹這個程序的技術(shù)要點在于sounding子程序

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論