《8253论文汇编语言论文》-毕业论文.docVIP

《8253论文汇编语言论文》-毕业论文.doc

  1. 1、本文档共5页,可阅读全部内容。
  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文档。上传文档
查看更多
w 8253论文汇编语言论文 摘要:本设计将汇编中最重要的三大芯片——8059(中断)、8053(定时/计数)、8055(并行接口)融合起来,同时涉及汇编中较为复杂的文件操作以及键盘接口电路,并将汇编的软硬件设计结合,为广大汇编初学者熟悉汇编编程和汇编语言的教学提供了一定的参考价值。 关键词:8253;8259a;8255;汇编语言;音乐 music player design and implementation based on assembly language wang shuai (southwest university of science and technology,school of information engineering,mianyang621010,china) abstract:this design combines the most important three chips-8059 (interrupted),8053 (timer/counter),8055 (parallel interface) together, and involves file operation and keyboard interface circuit which are very complicated,also combine the software and hardware design in assembly,thus it has a certain reference value to assembly language teaching and programming among the wide beginners. keywords:8253;8259a;8255;assembly language;music 汇编以其精简、高效和libc无关性的特点在当今程序设计语言中仍然占据重要位置,如果想学好计算机编程技能,想做一名合格的编程人员,想在计算机编程之路走的更远,学习者只有也必须从汇编语言开始,才能完整、完善的建立计算机编程知识体系!本设计的效果是:将存储于磁盘上的音乐数据通过计算机的扬声器播放出来并键盘实现对歌曲的选择以及开始播放、暂停播放、快进、快退等功能。 一、硬件设计 二、软件设计 (一)音乐数据在磁盘上如何存储 由于本程序采用dos功能调用,因此原始数据的存储格式要严格服从程序整体算法的设计:所有数据存放于文本文档中;前半部分存放延时时间信息,后半部分存放频率信息,二者以“;”号隔开;各部分内部以“,”号隔开;结尾用“.”标识。例如 “6,5,6,8,……,10,18,;262,294,330,262,……,196,262,.” 不难看出,本设计将“,”作为最小信息单位的标志,即两个“,”之间的一定是一个信息,所以千万不要漏掉“;”和“.”前面的“,”,否则程序无法辨认末尾数据! (二)装载数据到内存 本过程分为三步,即打开文件,读文件中的数据至dta(数据缓冲区)和关闭文件,分别使用dos中的3dh、3fh和3eh功能实现。打开文件后开始从头读取数据,读到“.”号时关闭文件。 (三)如何还原数据 从文件读入内存的是用ascii码表示的字符,比如“262,”读入内存将变成“32h36h32h2ch”,因此,还原数据就成了本程序最大的难点。本设计提供的思路是利用一个计数变量记录信息的位数n,若信息从高位开始的数值为a1、a2、a3……,则信息值应为a1× +a2× +a3× ……,但千万不要漏掉计算前要对数据做“减30h”的处理。 (四)声音音调的变化 该部分是本程序的核心,本程序是利用8253工作于方式3输出不同频率的方波来实现声音频率的变化的.首先要保护现场,然后读取频率和延时时长信息,接着初始化8253并设置计数初值,同时初始化8255打开扬声器和gate门,最后调用延时子程序。其中8253计数初值的计算是一个要重点解决的问题。假设8253的clk端输入时钟脉冲信号为 ,out端输出的信号频率为 ,则8253的计数初值为:n= / ,而 =1.19318mhz,故被除数应该为1234dch。注意这里可能会有可能产生溢出错误,原因是被除数与除数相差过于悬殊。 (五)如何实现对键盘的检测 为了训练汇编初学者对8259a的熟练度,本程序提供了利用8059a实现对键盘操作的检测方案。硬件连接图如图一所示。该部分程序伊始首先关中断,然后保存原09h中断向量,随即设置新09h中断向量,同时设置8059a的中断屏蔽字,允许ir1中断,接着开中断,主程其他工作处理,最后恢复原09h中断向量。而中断服务程序的流程是从60h端口读入扫描码,若有键按下则保存扫描码到keycode单元,

文档评论(0)

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

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

1亿VIP精品文档

相关文档