1、 课程设计说明书 专 业: 网络工程 课程名称: 汇编课程设计 设计题目: 打字游戏设计 设计时间: 2011-12-05 至 2011-12-16 评 语: _ _ _ _ _ _ 评阅成绩: 评阅教师: 课程设计报告的要求课程设计报告的要求 1、需求分析 描述问题。简述课题要解决的问题是什么,有什么要求和限制条件。 2、总体设计(程序设计组成框图、流程图) 3、详细设计(模块功能说明(如函数功能、入口及出口参数说明,过程调用关系描述 等) ) 4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采 取的解决措施 5、测试结果,用几组测试数据进行测试算法设计的正确性。
2、6、附录。源程序清单和结果:源程序要加注释。结果要包括测试数据和运行结果。 汇编语言课程设计案例汇编语言课程设计案例 一、一、 问题陈述及其需求分析问题陈述及其需求分析 要求:利用汇编语言编写一个小的打字游戏 内容:编写程序,在打开的菜单页面中选择游戏的难度。 难度选择包括以下5个选择 (1)very slow (2)slow (3)normal (4)fast (5)very fast 在编写过程中包括以下几个部分: (1) 初始化上部分的字母 (2) 获得下落的字母 (3) 字母下移,同时覆盖原来的字母 (4) 判断是否有输入 (5) 若无输入则下落到最后 (6) 覆盖原来的字符 (7)
3、重新进行循环 二、总体设计总体设计 主菜单流程图主菜单流程图 这个菜单部分主要是为了给不同水平的玩家选择游戏的速度,菜单上有对不同难度的 描述,有助于玩家的选择。 在选择过后会跳出一个提示界面,提示在游戏时的一些注意事项,之后键入任意键进 入游戏,开始游戏。 开始菜单选择 输 入 选 择 难 度 V ery slow slow normal fast V ery fast 开始游戏 游戏失败 结束 三、详细设计三、详细设计 游戏程序框图 此部分是进入游戏以后的设定,先初始化边框,同时将屏幕上方的字母初始化,将屏 幕下方添加代表“生命”的笑脸,当笑脸全部消失,则游戏失败,退出游戏。在游戏过程中,
4、 开始游戏 初始化屏幕上部的 字母 字母下落 屏幕下部图像全 部消失 游戏结束 键入字符 键入回车? Y 返回主菜单 N 键入 ESC? Y 退出程序 键入ESC建,则直接退出游戏。 字母下落部分流程图 这个部分是游戏的核心部分。 主要的想法是在某个地方出现字母, 然后延迟一段时间 (延迟时间由游戏速度控制) , 判断是否有输入字符, 同时判断字符是否为空格或者正 确的字符。输入的字符正确,则用空格覆盖当前的字符,同时产生下一个字母,重复 上面的过程。 若没有输入字符,则用空格覆盖当前字符,将当前字符在下一格处显示出来,不断的 重复,直到最后笑脸处,将笑脸用空格覆盖,同时产生一个新的字母。 字
5、母下落 是 否 有 输 入? 是 SPACE? 暂停 Y 输入正确? 是SPACE? Y Y 字母消失 N Y N N 是 否 有 生命? 游戏结束 N Y 空格覆盖当前 字符 字母下移 四、编码和测试四、编码和测试 主菜单部分如下图所示: 选择时效果如下图所示 在输入的字符不是 15 或 ESC 键时, 不会有任何反应, 当多次键入 15 或 ESC 键时, 按最后一次键入的有效,选择游戏难度后,键入 ENTER 键开始游戏。 进入游戏后提示信息如下图所示: 这里用了一个 INT 21H 的中断,等待接收一个字符来继续程序。同时给出了游戏过 程中的一些提示。 游戏过程如下图所示: 提示:在游戏过程中程序之识别大写字母,需要打开大写锁定进行游戏,否则不管输 入正确与否,都不会有变化。 游戏失败时界面如下图: 输入 ENTER 键继续,输入其他键没有任何变化。 失败以后的提示画面如下: 键入 ENTER 键则返回主菜单,键入 ESC 键退出程序。 退出程序的界面如下图: 五五总结与体会总结与体会 当我拿到这次课程设计的题目选择时,有点无从下手的感觉,最后选择了这个打字游 戏,因为我对游戏本来就有比较大的兴趣。 当是在写程序的过程中发