软件仿真音乐播放器课程设计报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
信息科学与技术学院微机原理与接口技术课程设计报告 题目名称: 软件仿真音乐播放 学生姓名: 学 号: 专业年级: 计算机科学与技术 指导教师: 时 间: 2014年1月13日 目 录 课程设计要求 3 一.背景分析及意义 3 二.总体设计 3 四.软硬件要求 10 五.程序流程图 11 六.使用说明 14 设计总结 14 附录A(代码) 15 课程设计要求 1.实现播放音乐; 2.实现单首音乐播放; 扩展功能:实现多首音乐连续播放和选择播放。 一.背景分析及意义 随着计算机的不断更新发展,计算机在各个领域的应用越来越多,更多的软件开发人员和相关技术人员在程序设计的过程中应用汇编程序或编制汇编语言。而汇编语言做为计算机专业大学生必修之课,每个做为本专业的学生对汇编的理解和学习就显的尤为重要。汇编语言是计算机能够提供给用户使用的最快而又最好最有效的语言,也是能够利用计算机所有硬件特性并能直接控制硬件的唯一语言。因而,对程序的空间和时间要求很高的场合,汇编语言的应用就显的必不可少了,一些直接控制硬件的应用场合,则更是非用汇编语言不可了。 这次课程设计是在学习汇编语言与实践相结合的一次综合应用。通过具体的问题分析、设计、调试、运行程序。在实际问题中锻炼提高自己,增加了对本门课程内容的理解,锻炼了动手能力。就这个程序具体而言:知道了音调与频率和时间的关系,就可以按照乐曲的曲谱将每个音符的频率和持续时间定义成两个数据表;然后编写程序依次取出表中的频率值和时间值,调用GENSOUNDF程序发出各种声音。这个程序最终通过菜单所提示的信息选取所要欣赏的音乐,是执行此程序后,会很有速且有效的使扬声器接通并发出音频为896 Hz的声音。 二.总体设计 ROM BIOS 中的BEEP子程序能根据BL中给出的时间计数植控制8253/8254定时器,产生持续时间计数值控制8253/8254定时器,产生持续时间为1个或几个0.5 秒,频率为896Hz的声音。通过对BEEP的修改,可产生任一频率的声音。用汇编语言写的GENSOUNG,能使Pc 机发出指定频率和指定延时的声音。它是一个很好的通用发声程序。组成乐曲的每个音符的频率值和持续时间定义成两个数据表,然后编程依次取出表中的频率值和时间值,调用GENSOUND程序发出各种声音。本程序就是通过GENSOUNG程序演奏乐曲的例子。该乐曲点播程序由一个乐曲点播主程序和四个模块组成。 歌曲设置模块: chg: mov ah,1 int 21h push ax compare: cmp al,1 je one cmp al,2 je two cmp al,3 je three cmp al,4 je endmus lea DX,change mov ah, 9 int 21h jmp chg ONE: lea dx,mess1 mov ah,09 int 21h LEA SI,MUS_FREG LEA BP,MUS_TIME JMP SOUND TWO: lea dx,mess2 mov ah,09 int 21h LEA SI,MUS_FREG1 LEA BP,MUS_TIME1 JMP SOUND THREE: lea dx,mess3 mov ah,09 int 21h LEA SI,MUS_FREG2 LEA BP,MUS_TIME2 (2)发声模块: SOUND: mov di,[si] cmp di, 0 je next cmp di,-1 je rotate mov bx,DS:[bp] call soundf add si,2 add bp,2 jmp SOUND next: pop ax inc al push ax jmp compare (3)发声子程序: soundf proc near push ax push bx push cx push dx push di mov al,0b6h out 43h,al

文档评论(0)

文档分享 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档