《微机原理与汇编教学实习报告》由会员分享,可在线阅读,更多相关《微机原理与汇编教学实习报告(11页珍藏版)》请在金锄头文库上搜索。
1、天津农学院计算机科学与信息工程系微机原理与汇编教学实习报告实习名称: 用汇编语言实现音乐程序设计 专 业: 计算机科学与技术专业 班 级: 2008级计算机科学与技术专业1班 学 号: 姓 名: 指导教师: 成 绩: 2011年1月4日目 录1 教学实习的内容 页码2 教学实习的目的 页码3 教学实习设计介绍 页码3.1 设计题目 页码3.2 设计目标 页码3.3 系统的主要功能 页码3.4 系统开发与调试过程 页码3.4.1 程序设计准备阶段 页码3.4.2 程序设计阶段 页码3.4.3 程序调试、测评、试运行阶段页码3.5 技术要点介绍 页码4 总结与体会 页码(要求:目录中不能出现4级标
2、题,宋体加粗,四号字,1.5倍行距。)(报告正文部分):(要求:正文部分一律用小四号字,宋体,1.5倍行距,首行缩进两个字符。一级大标题靠左,加粗。二、三、四级标题靠左,不加粗。)1 教学实习的内容综合运用学过的分支结构程序的编制方法,比较与转移指令,循环控制指令,主子结构程序的设计思想和方法,学习综合程序的设计、编制及调试。2 教学实习的目的配合微机原理与汇编语言程序设计的理论学习,通过系统的实践教学训练,培养独立分析问题和解决问题的能力,掌握汇编语言的编程和程序调试环境,锻炼一定的软硬件开发能力。3 教学实习设计介绍3.1 设计题目 音乐演奏_乐曲演奏3.2 设计目标编写一个音乐程序,要求
3、:按数字“1”,唱乐曲“玛丽有只小羔羊”;按数字“2”,唱乐曲“太湖船”;按数字“3”,唱乐曲 “祝福歌”;按数字“4”,唱乐曲 “亚洲雄风”;按Q鍵,退出。3.3 系统的主要功能利用发声程序,可以编写演奏乐曲的程序。乐曲是按照一定的高低、强弱和长短关系组成的音调,在一首乐曲中,每个音符的音高和音长与频率和节拍有关。组成乐曲的每个音符的频率值和持续时间是乐曲程序发声所需要的两个数据。本系统基于上述原理,根据音调与频率的关系,按照乐曲的曲谱将每个音符的频率和持续时间定义成两个数据表,然后依次取出表中的频率值和时间值,调用sounding程序用计算机扬声器唱歌曲。3.4 系统开发与调试过程3.4.
4、1 程序设计准备阶段为演奏的乐曲定义一个频率表和一个节拍时间表,在程序数据段中分别由MUS_FREG和MUS_TIME 所指向的数组;3.4.2 程序设计阶段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 0DH,0AH,INPUT ERROR!$msg5 DB 0DH,0AH,PLEASE
5、 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 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
6、,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 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,
7、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,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,33
8、0,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,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
9、,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,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
10、,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 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 M
11、OV 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 CMP al,51H JE EXIT ;比较所选数 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 A