终稿打字练习游戏程序Word文件下载.docx

上传人:b****7 文档编号:22265476 上传时间:2023-02-03 格式:DOCX 页数:39 大小:64.36KB
下载 相关 举报
终稿打字练习游戏程序Word文件下载.docx_第1页
第1页 / 共39页
终稿打字练习游戏程序Word文件下载.docx_第2页
第2页 / 共39页
终稿打字练习游戏程序Word文件下载.docx_第3页
第3页 / 共39页
终稿打字练习游戏程序Word文件下载.docx_第4页
第4页 / 共39页
终稿打字练习游戏程序Word文件下载.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

终稿打字练习游戏程序Word文件下载.docx

《终稿打字练习游戏程序Word文件下载.docx》由会员分享,可在线阅读,更多相关《终稿打字练习游戏程序Word文件下载.docx(39页珍藏版)》请在冰豆网上搜索。

终稿打字练习游戏程序Word文件下载.docx

因而,对程序的空间和时间要求很高的场合,汇编语言的应用就显得必不可少了,一些直接控制硬件的应用场合,则更是非用汇编语言不可了。

《打字游戏程序设计》课程设计是在教学实践基础上进行的一次大型实验,也是对该课程所学理论知识的深化和提高。

因此,要求我们能综合应用所学知识,设计与制造出具有较复杂功能的应用系统,并且在实验的基本技能方面上进行一次全面的训练。

通过具体的问题分析、设计、调试、运行程序。

在实际问题中锻炼提高自己,增加了对本门课程内容的理解,锻炼了动手能力。

就这个程序具体而言:

调用宏,显示背景和主界面,通过选择不同的选项,可以进入不同的界面;

采用BIOS功能的中断,可以在任何时候退出当前所在的界面并通过选择进入其他的界面。

这个程序最终通过菜单所提示的信息选取所要进入的界面,获得所要的功能。

第1章系统分析

要求完成一个打字练习程序,即在规定的时间内按下屏幕上显示的字母,字母就消失,否则字母一直移动到屏幕底端。

流程图

本次程序开始是一个主界面,在主界面上包括四个选项,第一个选项是进入打字子程序,第二个是选择进入等级设置子程序,第三个是进入帮助子程序,第四个是退出主界面,以下是程序的主流程图:

开始

输入密码

主界面

速度选择

游戏界面

ESC返回主界面Space暂停E退出

第2章系统总体设计

2.1打字程序包括以下五个子程序:

(1)主界面的显示模块;

(2)打字练习模块;

(3)设置速度模块;

(4)密码模块;

(5)清屏模块。

其中的打字练习模块又分为以下三个子程序:

(a)游戏界面模

(b)功能模块

2.2算法的整体设计思路

此程序涉及到宏和I/O中断的调用,通过对宏的定义和使用以及对I/O中断的使用,实现程序的相应功能。

利用宏,实现各个界面的显示,采用中断,实现各个子程序的相互转换。

其中最主要的是打字程序:

运行程序,打字界面中出现由26个字母组成的乱

,否序行,这时其中会有任一字母落下,在键盘上输入该字母,字母消失,分数值加1则字母一直移动到屏幕底端,然后消失,生命值减1。

当生命值减为零且未在字母下落到屏幕底端之前输入该下落字母时,打字练习结束,显示结束界面。

2.3程序的主要特点

本程序最大的特点就是具有较好的人机交互功能。

在主界面中,用户可以选择不同的游戏等级,他们能够根据自己的实际打字速度,选择相匹配的等级进行打字练习。

如果用户对我们设计的程序有不明白的地方,可以选择帮助进行求解,并能与我们联系,讨论程序的不足,寻求改进,或者分享程序中的精妙之处。

此外,根据用户的打字情况我们会给予他们相应的分数和生命数。

第3章详细设计3.1主界面伪代码

系统的主界面主要是显示欢迎语,制作人,时间,速度选择等主界面信息。

方便用户了解信息并进行选择操作。

用户密码为“111111”。

在用户输入正确的密码之后即可进入游戏进入下一选择菜单。

STR1DB'

Welcometoplaychars'

0AH,0DH,'

$'

STR2DB'

Madebylimingmingjiangsongli'

$'

STR3DB'

2012/6/21'

STR4DB'

Pleasechoosespeeding'

STR5DB'

PleasepressEntertocintinue...'

STRADB'

<

------Pleasechoose----->

'

STRBDB'

score:

'

'

i'

STRCDB'

Youchoose:

STRDDB

hqfuvodepfdjygnhtrwgaerjrklubgsnyrsbntrsbngtrdjykuahtrgregfytjgfjytjktru'

STREDB'

RIGHT:

MES5DB"

PLEASEENTERYOURPASSWORD:

$"

PASSWORDDB"

111111"

PASSWORD1DB6DUP(?

3.2等级界面伪代码

在主界面中选择2,进入等级界面的设置,其中有6个等级,代表不同的难易程度。

用户可选则其中的任意一个级别,按Enter键表示确定并返回主界面,若用户输入的错误的等级,则一直等待,直到输入了正确的等级。

以下是等级界面的伪代码:

STR7DB'

speed1'

STR8DB'

speed2'

STR9DB'

speed3'

STR0DB'

Selectthenumberamong1-3'

3.3游戏界面伪代码

此伪代码显示的是进入打字界面的提示信息:

ST1DB'

Pause'

ST2DB'

E:

Quit'

ST8DB'

Esc:

Back'

ST3DB'

FunctionMeun'

ST4DB'

pleaseinput...'

ST5DB'

SPACE:

Continue'

ST6DB'

ThankYou!

ST10DB'

;

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

ST9DB'

VREYGOOD!

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

3.4清屏子程序设计

BIOS功能调用中的INT10H功能6能使屏幕内容上卷指定的行,这个功能需要设置4个参数,分别代表清屏区域的左上角的坐标和右下角的坐标。

如果屏幕的其实行列不为(0,0)结束的行列不为(24,79),则屏幕上只有指定的一部分具有上卷的功能,这个屏幕伤的部分区域叫做窗口(window)像这样的窗口可以在屏幕上设置多个,这些窗口都可以独立使用。

如果上卷超过指定窗口的顶部,这些行的内容就消失,出现在窗口

底部的新行被填为空格,其属性用BH寄存器决定。

如果AL=0,则实现完成的工作是清楚屏幕的功能,它将按AL中的BH字符使指定的窗口为空白。

以下是清除全屏幕的子程序:

CLEARPROCNEAR

PUSHAX

PUSHBX

PUSHCX

PUSHDX

MOVAH,6

MOVAL,0;

blankscreen

MOVBH,7

MOVCH,0;

左上角行号

MOVCL,0;

左上角列号

MOVDH,24;

右下角行号

MOVDL,79;

右下角列号

INT10H;

屏幕初始化或上卷

MOVDX,0;

行列号都为0

MOVAH,2

置光标位置;

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

DIS525D,10100100B;

置背景色背景蓝前景红

DIS525D,11110100B;

置背景色背景白色前景红

DIS3

RET

CLEARENDP

3.5密码程序设计

DIS1MES5,5,15

LEABX,PASSWORD1

MOVCX,6

INPUT:

MOVAH,07H

INT21H

MOV[BX],AL

INCBX

MOVAH,02H

MOVDL,'

*'

LOOPINPUTCONTIUN:

CMPAL,0DH

JNECONTIUNMOVCX,6

LEASI,PASSWORD

LEADI,PASSWORD1CHECK:

MOVAL,[SI]

CMPAL,[DI]

JNESTART

INCSI

INCDI

LOOPCHECK

3.6宏代码

3.6.1在指定位置显示彩色字符串;

=========================================================

DIS1MACROSTRING1,Y,M

MOVBH,0;

页号

MOVDH,Y;

行标

MOVDL,M;

列标

置光标位置

MOVAH,09H

MOVDX,SEGSTRING1

MOVDS,DX

MOVDX,OFFSETSTRING1

INT21H;

显示字符串

ENDM

========================================================

3.6.2显示背景

============================================================

DIS5MACROS1,S2

DIS2

blankscreen

MOVAL,s1;

上卷25行

MOVBH,s2;

绿色背景红色前景

MOVCH,0

MOVCL,0

MOVDH,0

MOVDL,80

屏幕初始化或上卷

===============================================================

3.6.3画横向边框的宏

DIS6MACROZ1,Z2,Z3,Z4

LOCALC5;

LOCAL为重复定义的定义符

MOVCX,Z1;

循环次数

MOVDL,Z2;

C5:

MOVAH,2

MOVBH,Z3;

MOVDH,Z4;

MOVDL,2AH

输出‘*’

POPDX

INCDL;

列++

LOOPC5

3.6.4画竖边框的宏

===================================================================

DIS7MACROQ1,Q2,Q3,Q4

LOCALF1;

MOVCX,Q4

MOVDH,Q1;

F1:

MOVBH,Q2

MOVDL,Q3;

INCDH

LOOPF1

=======================================================================

3.7功能的进一步完善

3.7.1完善代码一

修改界面背景属性

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

DIS525D,10100100B;

DIS525D,01001111B;

置背景色背景红前景白

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

闪背背背亮前前前

烁景景景度景景景

显示背景

==

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 销售营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1