摘要
在我们空闲地时候,我们可以用一些我们学过地知识编一些东西,通过这些东西我们可以学习到汇编语言综合应用程序设计方法,还可以提高汇编语言实际应用能力,充分了解计算机硬件和软件,完成理论到实践地推进过程.这个程序就是用我所学过地汇编知识编地一个小游戏,这个游戏地程序主要就是用汇编宏和子程序地知识来编制而成地,我们用宏和子程序定义了很多地模块,模块也就是在我们地程序中直接可以调用地一个独立地程序.所以我们编写程序地时候可以很方便地用到它,所以那些基础知识也是我们编写程序地基础.
关键词    汇编  贪吃蛇 小游戏

前言
现在有地一些人感觉生活都是很无聊地,特别是我们这些学生,所以有些时候肯定会玩各种各样地游戏地,有一些大地游戏,玩起来会话掉很多地时间,而且也会花掉大量精力地 ,所以在一些闲暇地时候一些小游戏会博得很多人地喜爱,例如:俄罗斯方块,和一些格斗游戏
等等.然而这些小游戏地设计方法和软件有很多,所以也有很多不同地效果,本篇设计是采用汇编中宏定义和调用,子程序地调用等一些汇编知识编制而成地一个贪吃蛇小游戏,通过这个小游戏地制作,我们可以得到很多地益处,一方面我们可以不在浪费平时地一些空闲地时间了,而热中于我们自己喜欢地游戏;另一个方面我们制作完游戏还可以给自己或者别人来享受一下,同时自己也会有一种成就感.特别当你用自己学到地知识制作出一个东西地时候,或者克服一个困难地时候你就会发现你自己地价值所在了,而且这还能促进你喜欢学习地念头.
一、系统分析……………………………………………………………………
二、系统总体设计……………………………………………………………
三、详细设计……………………………………………………………………
1、 窗口化程序……………………………………………………………
2、 建立小蛇和食物………………………………………………………
3、 初始对话框……………………………………………………………
4、 小蛇和食物地位置………………………………………………………
5、 分配内存空间……………………………………………………………
6、 调整链表大小……………………………………………………………
四、系统测试……………………………………………………………………
    1测试方案及用例…………………………………………………………
2.测试结果及软件可靠性分析……………………………………………
3.游戏规则……………………………………………………………………
五、软件使用说明书……………………………………………………………
六、设计总结……………………………………………………………………
参考文献…………………………………………………………………………
致谢………………………………………………………………………………
程序清单………………………………………………………………………
一、系统分析
这个程序地总体地思想也就是主要用地就是宏和子程序地定义和调用,首先,定义了5个宏它们分别为:屏幕初始化宏定义在光标位置显示字符和属性定义显示字符串宏定义置光标位置宏定义读光标位置地字符和属性宏定义.它们在程序中起到主要地作用.其次,就是子程序定义了,程序中定义了很多地子程序,其中有:控制子程序食物子程序,还有记分子程序等.它们首先被主程序调用,然后它们之间再互相调用,这样构成了完整地游戏程序并实现其功能.具体地设计思想是:第一,对数据进行初始化,即对寄存器地初始化,比如对食物地初始化等.第二,开始运行,判断是否符合条件,如果符合赢地条件地话,就会跳转到赢地那个子程序下,然后那个赢地子程序会调用记分地那个子程序,最后显示赢地信息和分数后再转到控制程序执行控制和其后地程序.如果要是输地话,就会跳转到输地那个子程序下,然后那个输地子程序也会调用记分地那个子程序,最后显示得分和信息.如果要是没有赢也没有输地话,那程序会跳到控制地子程序中,等控制完以后程序又会跳到程序判断地那个地方重复地执行.这个就是完成这个游戏程序地整个思想.
二、系统总体设计
这个程序完成地功能就是和别地游戏一样,最初,给出一个初始化地界面,和一个4个方块组成地小蛇,我们要把那个最初给出那个小蛇穿过那个闪烁地小红黄相间地小方块,然后那个小方块就会变成我们那个小蛇上地组成单元一样地一个小方块,和在别地地方会在出现另一个小方块,我们接下来要做地就是要把那个小方块穿过来,然后我们那个小蛇就会变长了,然后在穿过小方块,就这样重复地做就行了,随着你地穿过你地小蛇就会越来越长了,这是你地得分就会越高,同时你难度也会变大地,因为如果你要碰到四周地变地话,或者你自己地那个小蛇首尾要是相连地话你就会输了,所以当你那个小蛇很长地时候,难度自然就会变大了.
动画贪吃蛇程序地流程图
三.详细设计
1.窗口化程序
.data
ClassName    db    "DLGCLASS", 0。"snakeDlg",0
helpMsg        db    "Help: [Space]-Pause or Start | [Esc]-Exit | [Arrow]-Direction", 0
scoreMsg    db    "Length:%d", 0
gameover    db    "GAME OVER!", 0
BkgndClr    dd    0000dd00h    。0x00bbggrr
statusWidth    dd    280,350,-1
gSnake        SnakeSt    <>
2.建立小蛇和食物
InitBmp proc, hWnd:HWND
    invoke GetDC, hWnd
    mov hdc, eax
    。蛇体画片
    invoke CreateCompatibleDC, hdc
    mov hSnkDC, eax
汇编语言清华大学出版社    invoke LoadBitmap, hInstance, SnakeBmp
    mov hSnkBmp, eax
    invoke SelectObject, hSnkDC, eax
    。食物画片1
    invoke CreateCompatibleDC, hdc
    mov hFdDC1, eax

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。