[音乐点播程序2).docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[音乐点播程序2)

西安 经典音乐在线点播程序 设计内容 1.在屏幕上显示歌曲菜单; 2.用户从键盘输入将要播放的歌曲的序号; 3.根据歌曲的序号,开始播放不同的音乐; 4.按下序号4,可以实现两个数字的相加; 5.按下序号5,返回Dos界面。 这个程序总体上能够实现经典音乐的播放。运行时按下1-5键可以演奏不同的乐曲“1:Happy birthday to you; 2:Mary had a little lamb; 3:Taihu boat; 4:Add; 5.Quit;”选择曲目序号进行歌曲播放;退出程序。 三、需求分析 (1)背景分析 随着计算机的不断更新发展,计算机在各个领域的应用越来越多,更多的软件开发人员和相关技术人员在程序设计的过程中应用汇编程序或编制汇编语言。而汇编语言做为计算机专业大学生必修之课,每个作为本专业的学生对汇编的理解和学习就显的尤为重要。汇编语言是计算机能够提供给用户使用的最快而又最好最有效的语言,也是能够利用计算机所有硬件特性并能直接控制硬件的唯一语言。因而,对程序的空间和时间要求很高的场合,汇编语言的应用就显的必不可少了,一些直接控制硬件的应用场合,则更是非用汇编语言不可了。 这次课程设计是在学习汇编语言与实践相结合的一次综合应用。通过具体的问题分析、设计、调试、运行程序。在实际问题中锻炼提高自己,增加了对本门课程内容的理解,锻炼了动手能力。就这个程序具体而言:知道了音调与频率和时间的关系,就可以按照乐曲的曲谱将每个音符的频率和持续时间定义成两个数据表;然后编写程序依次取出表中的频率值和时间值,调用SOUNDF程序发出各种声音。这个程序最终通过菜单所提示的信息选取所要欣赏的音乐,是执行此程序后,会很有速且有效的使扬声器接通并发出音频为896 Hz的声音。 功能分析 ROM BIOS中的BEEP子程序能根据BL中给出的时间计数植控制8254定时器,产生持续时间计数值控制8254定时器,产生持续时间为1个或几个0.5 秒,频率为896Hz的声音。通过对BEEP的修改,可产生任一频率的声音。用汇编语言写的SOUNDF,能使PC机发出指定频率和指定延时的声音。它是一个很好的通用发声程序。组成乐曲的每个音符的频率值和持续时间定义成两个数据表,然后编程依次取出表中的频率值和时间值,调用SOUNDF程序发出各种声音。本程序就是通过SOUNDF程序演奏乐曲的例子。 四、概要设计 1、方案设计 (1).歌曲设置程序(包括歌曲的频率和音调,还有界面的制作); (2).打开另一个显示窗口程序。用来显示播放音乐的歌曲菜单信息; (3).接收键盘输入程序。用户可根据菜单提示信息进行选择,共有5个选项;当用户输入其中一个选项时,执行对应的功能; (4).返回程序。当歌曲播放完毕时,程序自动返回菜单页面,可供用户在西进行选择。 (5).发声程序。由这几个程序完成乐曲的演奏,主要是根据每一个音调的频率来发声,从而连接成完整的乐曲。 结构图: 模块功能说明 (1).显示菜单模块:调用清屏clearscreen子程序,然后显示菜单。 (2).音乐点播模块:用户从键盘输入序号,如果序号为1,调用call one子程 序播放1号歌曲;否则判断序号是否为2,如果序号为2,调用 call two播 放2号歌曲;否则判断序号是否为3,如果序号为3,调用 call three播放3 号歌曲。 (3).数字相加模块:判断用户输入的序号是否为4,如果为4,调用call four 子程序,实现两个数字的相加。 (4)退出模块:判断用户输入的序号是否为5,如果为5,返回Dos界面。 五、 详细设计及运行结果 (1)程序总体流程图 (2)子程序模块流程图 (3)运行结果 结果显示: 六、 调试情况,设计技巧及体会 1、对自己设计进行评价,指出合理和不足之处,提出改进的方案: 评价: 在本次汇编语言程序设计中,我们主要实现了多任务管理,并能给出菜单界面进行提示。但是仍存在很多的不足,例如我们没有实现分屏对多任务的管理,而且在程序设计的过程中没有切实考虑到程序的并发执行,实现对内存的合理使用。 改进方案:在此程序的基础上实现分屏管理,并能利用中断实现多任务的调度分配。利用对内存和指令指针的管理,实现上下文信息的保存和切换debug命令,因为这是写好汇编程序的关键。“好的程序不是编出来的,而是调出来的”就足以说明调试程序的重要性。通过这次实际动手能力的

文档评论(0)

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

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

1亿VIP精品文档

相关文档