微机原理与接口技术课程设计-显示系统时间的程序(编辑修改稿)内容摘要:
SI MOV AL,CL。 把分数给 al CALL BCDASC INC SI MOV AL,DH。 把 秒数给 al CALL BCDASC MOV BP,OFFSET DBUFFER。 输出 39。 :39。 ,作为分隔符 MOV DX,0C0DH MOV CX,8 MOV BX,005EH MOV AX,1301H RE: MOV CX,0FFFFH。 延时 DEC BX。 bx 减 1 武汉理工大学《微机原理与接口技术》课程设计说明书 8 JNZ RE。 如果不等于零,转移到 re MOV AH,01H。 读键盘缓冲区字符到 AH 寄存器 INT 16H。 读磁盘变化状态 JE DISPLAY1。 相等转移到 display1 程序 JMP START MOV AH,4CH INT 21H。 返 dos RET TIME ENDP 子程序 3 的流程图如图 3所示。 开 始调 用 B I O S 中 断 , 读 取 系 统 时 间将 小 时 数 放 入 A L 中 , 并 调 用 子 程 序 转 化 为 A S C Ⅱ 码将 秒 数 放 入 A L 中 , 并 调 用 子 程 序 1 转 化 为 A S C Ⅱ 码输 入 : 作 为 分 隔 符将 分 数 放 入 A L 中 , 并 调 用 子 程 序 1 转 化 为 A S C Ⅱ 码延 时 程 序B X 是 否 为 0读 取 键 盘 缓 冲 区YNZ F 是 否 为 1NS T A R TD I S PL A Y程 序Y 图 3 子程序 3 的流程图 武汉理工大学《微机原理与接口技术》课程设计说明书 9 拓展设计及功能说明 在本课设中,在完成老师要求的 ASCII 码 的转换等基本任务以外,我还在显示方式中的 背景颜色 和字体颜色 等方面做了拓展。 为了使屏幕显示更加美观,同时也可以方便地改变字体颜色, 我采用的是显示器输出中断调用即为 INT 10H,其中的 0 号功能就是指设置显示方式, 入口参数: AH=0(功能号), AL=设置方式( 0~ 7)。 出口参数:无。 一共有 8中不同的显示方式,通过修改 AL 的值即可。 程序设计的 主 流程图 其程序设计的 主 流程图如图 4所示: 开 始开 辟 显 示 缓 存 区调 用 T I M E 子 程 序 , 读 取 时 间分 别 将 时 、 分 、 秒 转 化 为 A S C Ⅱ 码输 入 的 是 “ T ” 还 是 “ Q ”T结 束延 时 , 并 读 取 磁 盘 变 化调 用 B I O S 中 断 , 设 置 显 示 方 式通 过 显 存 将 时 间 显 示 出 来返 回 D O SQ 图 4 程序设计的 主 流程图 武汉理工大学《微机原理与接口技术》课程设计说明书 10 3 方案比较 方案 1 原理说明 首先在数据段开辟一显示缓冲 区,用来存储系统时间。 然后 调用 BIOS 中断,返回系统时间,并将来返回的二进制时间转换成 ASCII 码,分别将来小时数、分钟数、秒数存入显示缓冲区。 按照输入的提示,若输入为“ T” 时, 则 通过写显存将时间显示出来 , 并且运用了延时设置 CX,进行缓冲,对 BX 递减 1并 判断 BX,当结果为 0时, 然后 读取键盘缓冲区字符, 若 键盘缓冲区有新的字符输入,则跳入 START 重新开始, 若,没有 则继续从系统读取系统时间, 程序一旦进入运行,就将不间断地在显示屏显示时间,要想程序停止运行,可输入“ Q”即可退出。 在本方案中用到了我以上介绍的三个 子程序。 相关理论知识 1)、 BIOS 功能调用: 在存储器系统中,内存器高端 8K 的 ROM 中存放有 基本输入输出系统即为 basic Input/Output System, BIOS 例行程序。 BIOS 给 PC 系列的不同微处理器提供了兼容的系统加电自检、引导装入、主要 I/O 设备的处理程序以及接口控制等功能模块来处理所有的系统中断。 使用 BIOS 功能调用,给程序员编程带来极大方便。 程序员 不必了 硬件的具体细节,可直接使用指令设置参数,并中断调用 BIOS 例行程序,所以利用 BIOS功能调用编写的程序简洁,可读性好,而 且易于移植。 调用 DOS 或 BIOS 功能时,有以下几个步骤: ( 1) 、 将调用参数装入指定的寄存器。 ( 2) 、 如需功能调用号,把它装入 AH。 ( 3) 、 如需子功能调用号,把它装入 AL。 ( 4) 、 按中断号调用 DOS 或 BIOS。 ( 5) 、 检查返回参数是否正确。 2) 、 ASCII 的转换 与扫描码 : 键盘是计算机最基本的一种输入设备,用来输入信息,以达到人机对话的目的。 当在键盘上“按下”或“放开”一个键时,如果键盘中断是允许的( 21H武汉理工大学《微机原理与接口技术》课程设计说明书 11 端口的第一位等于 0),就会产生一个类型 9 的中断,并转入到 BIOS 的键盘中断处理程序。 非 ASCII 码键产生一个指定的操作。 在方案 1中就用到了通过单个字符的输入来对菜单的项进行选择,这样的程序也称为交互程序。 3)、 显示器输出中断调用 : 10H 中断调用为显示器中断,共有 17种功 能。 下面列出这次课设程序设计时可能需要的几种功能的使用情况。 ( 1) 、 设置显示方式( 0号功能) 入口参数: AH=0(功能号), AL=设置方式( 0~7)。 出口参数:无。 其 部分 显示方式的 8中情况如表 1所示: 表 1 8 种不同的显示方式 ( 2) 、 设置光标类型( 1号功能) 入口参数: AH=1(功能号), CH=光标开始行, CL=光标结束行。 出口参数:无。 根据 CX 给出光标的大小。 ( 3) 、 设置光标位置( 2号功能) 入口参数: AH=2(功能号), BH=页号, DH=行号, DL=列号。 出口参数:无。 根据 DX 确定了 光标位置。 AL 显示方式 0 40 25黑白文本方式 1 40 25彩色文本方式 2 80 25黑白文本方式 3 80 25彩色文本方式 4 320 200 彩色图形方式 5 320 200 黑白图形方式 6 640 200 黑白图形方式 7 80 25黑白文本方式 武汉理工大学《微机原理与接口技术》课程设计说明书 12 ( 4) 、 读当前光标位置( 3 号功能) 入口参数; AH=3(功能号), BH=页号。 出口参数: DH=行号, DL=列号, CX=光标大小。 方案 1 的流程图 其方案 1 的流程图如图 4所示: 开 始定 义 堆 栈 段 和 代 码 段开 辟 显 示 缓 存 区调 用 B I O S 中 断 ,。微机原理与接口技术课程设计-显示系统时间的程序(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。