汇编语言课程设计—————电子时钟的设计.docVIP

汇编语言课程设计—————电子时钟的设计.doc

  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文档。上传文档
查看更多
汇编语言课程设计—————电子时钟的设计

西安工业大学课程设计用纸 课程名称:汇编语言程序设计 课程英文名称:PROGRAMMING BY ASSEMBLE LANGUAGE 一.设计目的: 1.?????? 理解掌握定时/计数器和中断的使用方法。 2.?????? 掌握微机常用的输入输出方式及接口技术。 3.?????? 掌握一定的汇编语言知识,培养自己的动手操作能力。 4.?????? 学习程序设计的基本思路和方法。 二.程序内容: 第一部分:定义显示界面。 第二部分:调用系统时间,并将调用的用二进制表示的时间数转换成ASCII码,并将时间数存入内存区。 第三部分:将存在系统内存区的时间数用显示字符串的形式显示出来。 第四部分:获取键盘的按键值,以ESC键退出系统返回DOS。 三.程序设计原理: 首先在数据段开辟一显示缓冲区,用来存储系统时间。调用DOS中断,返回系统时间,并将来返回的二进制时间转换成ASCII码,方便时间显示时的调用。分别将来小时数、分钟数、秒数存入显示缓冲区,并最终存入一结束字符号’$’。调用DOS字符串显示功能将时间显示 西安工业大学课程设计用纸 出来。并调用屏幕I/O中断,定位光标的开始位置,结合着将时间显 示在我们预先定义好的位置上。由于获取了的系统时间不会自动刷 新,所以我们要设计成刷新的方式来不断获取系统的时间,这样就形成了会跳动的电子钟了。调用延时TIME延时中断服务程序,累加到存放秒值的寄存器DL中,并进行十进制调整。在累加的过程中,不断地对时、分、秒值进行比较,秒不能等于60,分不能等于60,时不能等于24。秒等于限制值时,则使秒值为0分值加1;分等于限制值时,则使分值为0时值加1;时等于限制值时,则使时值为0;时、分、秒值都不超过限制值时,就转显示屏输出。时间显示的刷新要配合延时程序进行,为了得到良好的显示效果,延时程序要尽量接近1秒,但又不能超过一秒,所以本程序调用了一段较精确的时间延迟程序。?????? 利用BIOSS设计窗口,选择适当的背景和前景等,使屏幕显示更加完美。程序一旦进入运行,就将不间断地在显示屏显示时间,要想程序停止运行,可同时在键盘按下ESC键返回DOS系统。 四.程序流程图如下: DATA??? SEGMENT???????????????????????????????????????? ;设置数据段 ???BUF1??? DB THE TIME IS NOW: $ ???BUF5??? DB ?@@@@@?? ^^^^^^^??? @@@@@@?$ ?? BUF6??? DB ???? #######???? ?$ ???BUF7??? DB 00 o o 00 $ ???BUF8??? DB 00 (::) 00 $ ???BUF9??? DB 00 ~~ 00 $ ???BUF10?? DB 00 !! 00 $ ???BUF3??? DB CLASS:040402206 $ ???BUF4????DB NAME:hu ling wei?$ ?? BUF2??? DB 10 ?????????? DB 10 DUP(?) ?????????? DATA ENDS ???STACK?? SEGMENT STACK??????????????????????? ;设置堆栈段 ?????????? DB 100 DUP(?) ?????????? STACK ENDS ???CODE??? SEGMENT?????????????????????????????? ;设置代码段 ?????????? ASSUME CS:CODE,DS:DATA,SS:STACK ???CURSOR??MACRO ROW,CLM????????????????????????? ;设置光标位置 ?????????? MOV AH,2 ?????????? MOV BH,0 ?????????? MOV DH,ROW ?????????? MOV DL,CLM? ???????????INT 10H ?????????? ENDM ????WIN????MACRO ROWL,CLML,ROWR,CLMR,COLOR???????? ;设置窗口,位置,颜色 ?????????? MOV AH,6 ?????????? MOV AL,0 ?????????? MOV CH,ROWL ???????????MOV CL,CLML ?????????? MOV DH,ROWR ?????????? MOV DL,CLMR ???????????MOV BH,COLOR ?????????? INT 10H ???????????ENDM

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档