电子表设计(微机原理与接口技术课程设计)_第1页
电子表设计(微机原理与接口技术课程设计)_第2页
电子表设计(微机原理与接口技术课程设计)_第3页
电子表设计(微机原理与接口技术课程设计)_第4页
电子表设计(微机原理与接口技术课程设计)_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、河南理工大学计算机科学与技术学院课程设计报告20 13 20 14 学年第 2学期课程名称微机原理与接口技术 设计题目电子表学生姓名学 号专业班级指导教师2013 年 3 月电子表程序错误!未定义书签。1设计任务及要求分析11.1设计目的11.2设计任务11.3具体要求12方案比较及认证说明23系统原理阐述34软件设计课题说明 104. 1软件思想104. 2流程图104. 3源程序及程序注释125调试记录及结果分析135.1程序调试过程135.2运行结果136设计总结及心得体会167参考文献178附录1:源程序及程序注释18汇编语言是计算机能够提供给用户使用的最快而又最有效的语言,也是能够

2、利用计算机所有硬件特性并能直接控制硬件的唯一语言。因而,对程序的空间和 时间的要求很高的场合,汇编语言的应用是必不可少的。至于很多需要育接控制 硬件的应用场合,则更是非用汇编语言不可了。随着科学技术迅速发展,理工科 大学牛不仅需要掌握计算机方面的基木理论知识,而且还需要掌握基木的实验技 能及一定的科学研究能力。通过课程设计,使学牛巩固和加深微型计算机原理理 论知识,通过实践进一步加强学牛独立分析问题和解决问题的能力、综合设计及 创新能力的培养,同时注意培养学牛实事求是、严肃认真的科学作风和良好的实 验习惯,为今后工作打下良好的基础。鉴于汇编语言的广泛用途及其在当代计算机界的重要作用,本人利用学

3、的知 识,在同学门的帮助下,花费大量时间,完成了关于电子表的系统设计。这个系统是应用于电脑中的小应用程序,可是显示电脑中的时间。很多地方 都会有个吋钟显示,其中大多是应用了类似这样的方法。关键词:汇编语言计算机时钟显示1设计任务及要求分析1.1设计目的(1) 通过设计电子表,掌握屮断的使用方法。(2) 掌握基木的显存读写技术。(3) 学会在屏幕上以七段数码管的形式显示本机时间的方法。(4) 学会用汇编语言编写一个完整的程序,提高自己的动手操作能力。(5) 学习程序设计的基本思路和方法,培养分析问题、解决问题的能力。1 2设计任务采用汇编语言设计一个电子表程序,在屏幕上以七段数码管的形式显示木机

4、 时间,精确到秒。按s启动,按t停止,按p暂停,按q退出程序。1.3具体要求(1) 设计任务及要求分析(2) 方案比较及认证说明(3) 系统原理阐述(4) 软件设计课题需要说明:软件思想,流程图,源程序及程序注释(5) 调试记录及结果分析(6) 总结(7) 参考资料(8) 附录:芯片资料或程序清单,软件演示屏幕拷贝图或硬件实物图2方案比较及认证说明设计方案:数字9屮的每一个数字用“丨”和“一”字符组成的“七段” 码图形表示,时与分、分与秒之间的两点用“字符表示。这些字符预先定义 在数据段的字符图形里,利用bios int 1aii的2号系统功能调用,读出计算机 系统的时间(为bcd码),置换成

5、字符图形标屮的图形字符显示。木程序设计的关键是随着系统时间的变化,用字符组成的图形数字如何进行 相应的变化。方法是:不停地读取系统时间并保存在寄存器中,将每次取出的时 间显示并与前一次比较,先比较“秒”值,在不同的情况下(系统时间发生了增 1的变化),则调用相应的图形字符显示,在不超过60秒的情况下,重复比较秒, 然后再比较和显示“分”值与“小时”值。3系统原理阐述用七段码电子表显示程序系统时间,程序设计的关键是随系统时间的变化, 用字符组成图形数字如何进行相应的变化。编写的程序,主要包含以下子程序:1)对时间值进行处理并显示的子程序:xian procpushsipushdipushdxpu

6、shcxpushbxpushaxpopaxpushaxmovbx, axmovax, 0moval, bhmovcl, 4shral, clmovbl, almovdh, 10movdl, 2callffpopaxpushaxmovbx, axmovax,0moval, bhandal, ofhmovbl, almovdh, 10movdl, 6callffmovdh, 10movdl, 10movbl, 10callffpopaxpushaxmovcl, 4shral, clmovbl, almovdh, 10movdl, 14callffpopaxpushaxandal , ofhmovb

7、l, almovdh, 10movdl, 18callffmovdii, 10movdl, 22movbl, 10callffpopaxpopbxpushbxpushaxmovax, 0moval, bhmovcl, 4shral, clmovbl, almovdh, 10movdl, 26callffpopaxpopbxpushbxpushaxmoval, bhandal, ofhmovbl, almovdh, 10movdl, 30callffmovdh, 0movdl, 15movbl, 22callffpopaxpopbxpopcxpopdxdisipoppopretxian endp

8、2)显示具体数值的子程序:procpushaxpushbxpushcxpushdxcmpbl, 0jelocmpbl, 1jelicmpbl, 2jel2cmpbl, 3jel3cmpbl, 4jel4cmpbl, 5jel5cmpbl, 6jel6cmpbl, 7jel7cmpbl, 8jel8ffl4- leajmpl5- leajmpl6- leajmpl7- leajmpl8- leajmpl9- leajmpl19 leajmp leh leadl s4tydls5tydls6tydl s7tydls8tydl s9tydl siltydl str t dy 严st dy 严st d

9、y 严ol bd l2oylb9loty:movah, ofhint10hsubex, exmovcl, diincdiplot_next:adddh,di+2adddl, di+3movah, 2int10hmoval, dimovbl, di+1pushexmovcx, 1movah, 09int10hpopexadddi, 4loopplot_nextpopdxpopexpopbxpopaxmovcx, 100gg:decexloopggretffendp;显示方式3)报时子程序:beep procpushaxpushbxpushcxpushdxmoval ,1o11o11obout43

10、h, almovax, 533hout42h, almoval, ahout42h, alinal, 61hmovah, aloral, 03out61h, alsubcx, cxmovbl, 28hg7: loopg7decbljnzg7moval, ahout61h, alpopdxpopcxpopbxpopaxretbeep endp4软件设计课题说明4. 1软件思想本课题主要涉及以下知识点:数据段:(1) disptime, showtime 显示时钟(2) 定义09十个图形数字,以便模拟七段码显示吋钟宏定义:(1) cleai定义清屏宏(2) rowcol定义光标定位宏(3) crl

11、f回车换行宏(4) display显示字符串宏(5) change计算时间宏函数:(1) main主函数(2) paly主要完成显示七段码电子表显示(3) progo到prog 10完成七段码到一半显示的转换(4) moveshape显示七段码电子表(5) delay延迟函数(6) exit返回dos函数4. 2流程图本实验程序流程图见下页4. 3源程序及程序注释见附录lo5调试记录及结果分析5.1程序调试过程(1) 将上述程序编译f汇编源文件,命名为sun. asmo(2) asm将牛成一个exe文件。如果程序有错误则不能牛成,需找出源程序中 的错误并改正。(3) 编译、连接、运行文件,即可

12、显示结果。(4) 根据显示结果输入字母,查看运行结果。5. 2运行结果(1)程序运行后,屏幕显示如下图所示:please press s to start ?图1运行程序后的桌面显示(2)在键盘上输入s,显示本机时间,如下图所示:图2输入s后,显示本机时间在键盘上输入t,屏幕重新显示开始时的画面,如下图所示;再次输入s,重 新显示本机时间。图3输入t后的屏幕显示(4)输入p,时间将会暂停,如下所示;再次输入p,计时继续。图4输入p,屏幕显示暂停(5)输入字母q,则退出时间显示。6设计总结及心得体会以前没有专门练习过程序的编写和运行,对于教科书上的程序也没有认真的 了解,当接到这个电子表程序设计

13、时,感觉比较迷茫,当时就是努力做到自己最 好的东西。当认真看过教科书和一些专业书籍时,感觉到汇编语言好神奇,在练习程序 编写后,不仅加深和巩固了我们的课木知识,而且增强了我们自己动脑,自己动 手的能力。电子表的程序属于比较基本的汇编程序,涉及了宏指令以及中断的内容,而 这些必须要认真学习微机原理这本书。总之,这次课程设计对于我们有很人的帮助,熟悉了汇编程序的编写过程和 运行过程,最后还提高了自己的动手能力。感谢老师的悉心指导。7参考文献1、戴梅萼、史嘉权编著微型计算机技术及应用(第三版)北京:清华大学出版 社,20032、周明德编著.微型计算机系统原理及应用(第四版).北京:清华大学出版 社,

14、20023、李顺增,吴国东,赵河明等微机原理及接口技术北京:机械工业出版社,20064、杨立新微型计算机原理和应用m.北京:科学技术文献岀版社,1986.115、李大友微型计算机原理m.北京:清华大学岀版社,1998.76、哇碧霞微型计算机原理与组成m人民邮电出版社,2003. 87、杨振江、冯军单片机原理与实践指导中国电力出版社.200& 88、徐晨、陈继红、王春明、徐慧微机原理及应用高等教育出版社.2004. 88附录1:源程序及程序注释data segment;*定义phase等提示信息*infon dbodh,oah,odh,oah,'please press s to

15、 start!$*;str db 0dh,0ah,tress p to pause$'str1 dbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb4950h,7,0,0 6ch,7,0,l 65h,7,0,l 61h,7,0j 73h,7,0,l 65h, 7,0,1 70h,7,l,3 72h,7,0,l 65h,7,0,l 73h,7,0,l 73h,7,0,l 50h,7,0,2 6bh,7,0,2 65h,7,0,l 79h,7,0,l 70h,7,0,2 61h,7,0,l 75h,7,0j 73h,7,0,l 65h,7,0j 21h,

16、7,0,ldb70h,7,l,-9db72h,7,0,ldb65h,7,0,ldb73h,7,0,ldb73h,7,0,ldb51h,7,0,2db6bh,7,0,2db65h,7,0,ldb79h,7,0,ldb65h,7,0,2db78h,7,0,ldb69h,7,0,ldb74h,7,0,ldb21h,7,0jdb70h,7,l,-9db72h,7,0,ldb65h,7,0,ldb73h,7,0,ldb73h,7,0,ldb54h,7,0,2db6bh,7,0,2db65h,7,0,ldb79h,7,0,ldb73h,7,0,2db74h,7,0,ldb6fh,7,0,ldb70h,7,

17、0,ldb21h,7,0j;鶯奠关曲x 0 94-t®庶彗哪*薫薫so dh 6dh 5fhjoodh 7chja'dh 7cpwodh 5fh/7odh 7chbo1dh 7chz'os 一 db 2db 7chz1odh 7chz1os2 db 5dh 5fh/7oos3 ss4 db7chz 匚 5fhjo* 7chz' 5fh70 55fhjoo 7chz 匚 5fhzp' 7chz 匚 5fhjo 47cpwo 5fhjoj 7cfwj 7chz'os5db5db5fh,7,0,0db7ch,7,1,-1db5fh,7,0,ldb7c

18、h,7,1,1db5fh,7,0,ls6db6db5fh,7,0,0db7ch,7,1,-1db5fh,7,o,1db7ch,7,1,1db5fh,7,o,1db7ch,7,0,-ls7db3db5fh,7,0,0db7ch,7,1,1db7ch,7,l,0s8db7db7ch,7,l,0db5fh,7,-1,1db7ch,7,1,1db5fh,7,0,ldb7ch,7,1,1db5fh,7,0,ldb7ch,7,o,-1s9db6db7ch,7,l,0db5fh,7,1,1db7ch,7,1,1db5fh,7,0,ldb7ch,7,1,1db5fh,7,0,ls10 db2db03h,7,l

19、,0db03h,7,l,0data endsstack 1 segmentdb200 dup (0)stack 1 endscode segmentassumecs:code,ss:stack1,ds:datastart:movax,datamovds,axstar: movah,0;设置显示方式moval,3int10hmovah,0bh;置彩色调板movbh,0movbl,1int10hmovah,0bh;置彩色调板movbh,1movbl,4int10hleadxjnfonmovah,9int21hkeyo: movah,1;读键盘缓冲区字符int16hmovah,0int16hcmpa

20、l;s*jnzkeyomovah,2;取系统时间int1ahmovax,0movbx,0movah,ch;取系统时间moval,cl;保存分钟movbh,dh;保存秒movbl,dl;保存百分之一秒tt:pushaxpushbxmovah,0moval,3int10hmovah,0bhmovbh,0movbl jint10hmovah,0bhmovbl,4int10hww: popbxpopaxcallxianpushax;调用显示子程序movah,1;读键盘缓冲区字符int16hjzqumovah,8;从键盘输入字符int21hcmpal;q*;输入q,退出程序jetucmpal,t;输入t

21、,停止程序jzstarcmpal,p;输入p,暂停程序jnequkey: movah,1;读键盘缓冲区字符int16hint16hcmpal,pjnzkeyqu: movah,2;取系统时间int1ahcmpbh,dhjequpopaxincbh;对时间进行加1cmpbh,60jlttmovbh,0incalcallbeepcmpal,60jlttmoval,0incahcmpah,24jlttmovah,0jmpttint21hretxian proc;对时间值进行处理并显示的子程序movshrmovmovmovcallpoppushmovmovmovandmovpushsipushdipu

22、shdxpushcxpushbxpushaxpopaxpushaxmovbx,axmovax,0moval,bhcl,4al,clbl,aldh,10dl,2ffaxaxbx,axax,0al, bhal,0fhbl,almov mov call mov mov mov call pop push mov shr mov mov mov call pop push and mov mov mov call mov mov mov call pop pop pushdh,10dl,6ffdh,10dl,10bl,10ffaxaxcl,4al,clbl,aldh,10dl,14ffaxaxal ,0fhbl,aldh,10dl,18ffdh,10dl,22bl,10ffaxbxbxpushmovmovmovshrmovmovmovcallpoppoppushpushmovandmovmovmovcallmovmovmovcallpoppoppoppoppoppopaxax,0al,bhcl,4al,clbl,aldh,10dl,26ffaxbxbxaxal,bhal,0fhbl,aldh,10dl,30ffdh,0dl,15bl,22ffaxbxcxdxdisixianendpffprocpushaxpushbxpushcxpushdxcmpbl,0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论