1、 1 微机原理与接口技术 课程设计报告 (选择多功能程序设计软件开发方向) 班级:班级: _ _计算机计算机 1101 _ 1101 _ 学号:学号: _ _ 姓名:姓名: _ 指导教师:指导教师: _ 日期:日期: 20132013 年年 9 9 月月 2828 日日_ _ 2 一、设计题目一、设计题目 多功能程序的设计多功能程序的设计 1设置一个主菜单界面,通过按键选择进入以下其中一项功能(按键自己设 置,可以是数字键或字母) ,按 ESC 返回主菜单;按 Q 键退出系统;要求界面简 洁明了,易于操作。 2日期显示功能。在屏幕上以 yyyy-mm-dd 的格式显示系统日期、并以一定 时间间
2、隔随机改变显示位置; 3闰年判断功能。提示输入闰年,对输入内容具有容错处理,计算是否闰年, 然后输出结果;对输入的数字有容错处理,对非法字符给出提示。 4代码转换功能。从键盘实现不同数制的输入并转换成另一种数制输出,如 将十进制数(065535)转换为其对应的二进制数、将二进制(最多 16 位)数 转换为其对应的十进制数、 将十进制数 (065535) 转换为其对应的十六进制数、 将十六进制数(最多 4 位)转换为其对应的十进制数等。键盘输入时,具有出错 信息的提示与处理。 (提示:获取系统时钟、屏幕显示需要使用相关的 DOS 功能调用和 BIOS 调 用,请查阅相关参考书) 二、课程设计的目
3、的二、课程设计的目的 1加深对课程理论知识的理解; 2通过编写一定规模和难度的程序,进行一次较全面的汇编编程训练,提高 分析问题和解决问题的能力;提高调试程序的能力。 3熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,作为微机开发 应用方面的初步训练。 三、三、设计实现功能设计实现功能 1. 菜单显示菜单显示:设置有一个可以进行选择执行不同功能的主菜单和进制转换的子 菜单,按对应功能的按键便可执行相应的功能;若有按到出选项外的其他键 则提示退出标示,输入 Y 则返回主菜单,输入 N 则返回上一级。 2. 日期显示:日期显示:将时间显示和日期显示功能统一到第一个功能中,进入该功能后 程序获取
4、到系统时间然后间隔一段时间按照随机生成的坐标换显示的位置。 按任意非空键键则可以返回主菜单(在完成题目的基本功能的基础上,有扩在完成题目的基本功能的基础上,有扩 展了新的功能:增添了时间的显示)展了新的功能:增添了时间的显示) 。 3.3. 闰年判断功能闰年判断功能:用户输入 4 位数据后系统自动显示判断结果,否则以回车键 为判断用户是否输入结束。在此功能功能中有输入数据的容错处理,对非法 字符会给出错误提示。在执行过后将会跳出提示信息询问是否要返回主菜(Y 为返回主菜单,N 为返回上一级,即继续执行闰年判断)使用者可根据需要选 3 择。在这里也设置了容错处理,如果用户输入的不是 Y 和 N
5、会给出错误提示。 4. 数制转化功能:数制转化功能:进入此功能选项后可看到一个数制转换的子菜单,按相应选 项可进去相应的功能。在此有对输入数据做容错处理,对非法字符给出提示。 数制转化完会跳出提示信息用户可按相应的字符选择返回上一级或返回子菜 单。 四、设计内容与具体过程(分功能模块四、设计内容与具体过程(分功能模块说明)说明) 1.总体结构模块设计:总体结构模块设计: 设计一个主菜单界面,在此界面我们可以选择调用要执行的相应的功能,也可以退 出系统。 在制作菜单等显示字符串的过程中主要使用 BIOS 中断调用, 主要使用到的 BIOS 中断中断如下: 中断号为中断号为 10H10H: 功能号
6、 AH=00H 置显示方式 入口参数:AL=显示方式代码(00H13H) AH=02H 置光标位置 入口参数:DH/DL=行/列 BH=显示页 AH=03H 取光标位置 入口参数:BH=显示页 出口参数:DH/DL=光标起始行/列 AH=06H 当前显示页上卷 入口参数: AL=上卷行数,0 为清屏 BH=填充字符属性 CH/CL=上卷窗口左上角坐标 DH/DL=上卷窗口右下角坐标 AH=13H 从指定位置起显示字符串 入口参数: BH/BL=显示页/属性 CX=字符串长度 DH/DL=行/列 ES:BP=字符串起始逻辑地址 AL=0,用 BL 属性,光标不动 1,用 BL 属性,光标移动 2,字符,属性,光标不动 3,字符,属性,光标移动 中断号为中断号为16H:16H: 功能号AH=01H 检测键盘缓冲区是否空 出口参数:ZF=1,缓冲区空 ZF=0,缓冲区不空 AH=扫描