汇编语言课程设计打字游戏.docx

上传人:b****4 文档编号:622616 上传时间:2022-10-11 格式:DOCX 页数:20 大小:376.39KB
下载 相关 举报
汇编语言课程设计打字游戏.docx_第1页
第1页 / 共20页
汇编语言课程设计打字游戏.docx_第2页
第2页 / 共20页
汇编语言课程设计打字游戏.docx_第3页
第3页 / 共20页
汇编语言课程设计打字游戏.docx_第4页
第4页 / 共20页
汇编语言课程设计打字游戏.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

汇编语言课程设计打字游戏.docx

《汇编语言课程设计打字游戏.docx》由会员分享,可在线阅读,更多相关《汇编语言课程设计打字游戏.docx(20页珍藏版)》请在冰豆网上搜索。

汇编语言课程设计打字游戏.docx

汇编语言课程设计打字游戏

目录

1.课程设计目的及内容……………………………………………………………2

1.1课程设计目的………………………………………………………………2

1.2课程设计内容………………………………………………………………2

2.开发环境…………………………………………………………………………2

2.1软、硬件环境………………………………………………………………2

2.2MASM开发环境……………………………………………………………3

3.功能分析…………………………………………………………………………3

3.1基本功能设计………………………………………………………………3

3.2系统程序流程图……………………………………………………………4

4.调试和运行程序…………………………………………………………………5

4.1程序调试……………………………………………………………………5

4.2程序运行……………………………………………………………………6

5.课程设计总结……………………………………………………………………8

6.参考文献…………………………………………………………………………8

附录…………………………………………………………………………………9

源程序代码……………………………………………………………………9

 

打字游戏

1.课程设计目的及内容

1.1课程设计目的

汇编语言是一项实用性很强的技术,学完教学大纲规定的全部内容,完成所有实践环节的基础上,旨在深化学生学习的汇编语言课程基本知识,进一步掌握汇编语言课程设计方法,提高分析问题,解决问题的综合应用能力。

学会查阅和汇编语言相关的规范,手册等技术资料。

能正确绘制和使用流程图。

掌握汇编语言程序设计和程序调试的基本技能,能进行基本的软件设计。

1.2课程设计内容

此课程设计中,实现的主要功能是在屏幕的顶端排列一排英文字母,底端对应排列一排小球或小方块,屏幕顶端的英文字母以一定的速度随机下落,落到底端的小球或小方块处,小球或小方块消失,但如果在英文字母落到底端前,正确按键(落下的英文字母的键位),则英文字母消失,英文字母消失或落到底端后,顶端原字母的空处出现另一新字母,按空格键则暂停,再按空格键字母继续下落,如过底端小球或小方块消失后,则不再出现。

2.开发环境

2.1软、硬件环境

软件环境:

操作系统:

Windows864位(DirectX11)、

BIOS系统

DOS系统

硬件环境:

处理器:

英特尔第三代酷睿i3-3110M@2.40GHz双核

内存:

4GB(三星DDR31333MHz)

主硬盘:

希捷ST500LM012HN-M500MBB(500GB/5400转/分)

显示器:

三星SEC3649(14英寸)

 

2.2MASM开发环境

Masm是汇编编译器,是微软公司开发的汇编开发环境,拥有可视化的开发界面,使开发人员不必再使用DOS环境进行汇编的开发的优点,支持伪指令和宏汇编,最后编译生成obj文件,通过link工具连接成可执行文件exe。

使用步骤为:

a使用编辑软件TE.EXE进行源程序的编写。

b使用汇编软件MASM.EXE对源程序汇编。

c使用连接软件LINK.EXE对目标文件进行连接。

d使用调试软件DEBUG.EXE对可执行程序进行调试。

 

3.功能分析

3.1基本功能设计

(1)屏幕的顶端排列一排英文字母,底端对应排列一排小球或小方块。

(2)屏幕顶端的英文字母以一定的速度随机下落,落到底端的小球或小方块处,小球或小方块消失。

(3)在英文字母落到底端前,正确按键(落下的英文字母的键位),则英文字母消失。

(4)按空格键则暂停,再按空格键字母继续下落。

(5)英文字母消失或落到底端后,顶端原字母的空处出现另一新字母。

(6)底端小球或小方块消失后,不再出现。

(7)程序执行后,出现新界面.新界面应包含以下内容:

a.显示时间

b.按回车键继续

c.按ESC键返回主界面

d.按’E’键退出程序

 

3.2系统程序流程图

图1打字游戏程序流程图

4.调试和运行程序

4.1程序调试

(1)打开windows命令窗口,进入masm程序的安装目录,汇编源文件,如图2:

图2文件链接图

(2)链接原文件,并运行可执行文件,如图3:

图3运行可执行文件图

4.2程序运行

(1)进入主程序段显示提示信息,程序功能实现如图4所示:

图4程序主界面图

(2)按回车键进入打字练习页面,并且开始练习打字,如图5:

图5打字主界面图

(3)进入游戏后,随机落下一字母,如果按下空格,则暂停。

如图6所示:

图6游戏中按下空格暂停游戏界面

(4)在打字练习过程中,按空格键暂停,按“ESC”键为返回主页面。

最后练习打字结束按“E”退出程序,如图7所示:

图7回到主界面图

5.课程设计总结

在短暂几天的时间里,汇编语言课程设计结束了,我的收获很大。

通过课程设计的编程和对编程过程中遇到的问题的思考,有效的提高了我对汇编的认识和理解,切实的提高了我的编程能力,补全了我的不足。

通过这次课程设计,我巩固了学过的知识,能用汇编语言熟练地运用顺序、选择、循环三大结构,进一步掌握了各个指令的功能,特别是转向指令,掌握了子程序的定义及调用,以及正确地运用DEBUG指令。

在整个程序的编写中,调试占了很大部分的时间。

要想写好汇编语言的程序,必须认真对待代码的每一个细节,还必须熟练的掌握debug命令,这对程序的调试是非常重要的。

通过这次实际动手能力的培养,我进一步熟悉了汇编语言的结构和使用方法,基本达到了能独立阅读、编制和调试一定规模的汇编语言程序的水平。

6.参考文献

[1]杨文显,宓双,胡建人.新编汇编语言程序设计[M],北京:

清华大学出版社,2010:

20-58

[2]朱玉龙,任文览等.汇编语言程序设计[M],北京:

清华大学出版社,2003:

67-89

[3]吴向军等.汇编语言程序设计[M],北京:

高等教育出版社,2002:

98-119

[4]沈美明等.IBM-PC汇编语言及程序设计实验教程[M],北京:

清华大学出版社,2001:

45-67

[5]钱晓捷等.汇编语言程序设计[M],北京:

电子工业出版社,2000:

1-24

[6]李珍香等.汇编语言程序设计案例精编[M],北京:

中国水利水电出版社,2004:

5-16

[7]白小明.汇编语言程序设计[M],北京:

中国铁道出版社,2009:

56-76

[8]王成耀,姚琳.汇编语言程序设计[M],北京:

机械工业出版社,2003:

34-46

[9]范立南,谢子殿.单片机原理及应用教程[M].北京:

北京大学出版社,2006.1:

123-130

[10]沈美明等.IBM-PC汇编语言及程序设计实验教程[M],北京:

清华大学出版社,2001.2:

101-113

附录:

源程序代码

INIT_GAMEMACROOP1,OP2,OP3,OP4,OP5,OP6

MOVCX,00H

MOVDH,OP1

MOVDL,OP2

OP6:

MOVAH,02H

MOVBH,00H

INT10H

PUSHCX

MOVAH,0AH

MOVAL,OP3

MOVBH,00H

MOVCX,01H

INT10H

POPCX

INCCX

INCOP4

CMPCX,OP5

JNEOP6

ENDM

CLEAR_SCREENMACROOP1,OP2,OP3,OP4

;本段程序主要是通过定义变量和调用实现清屏宏定义

MOVAH,06H

MOVAL,00H

MOVBH,07H

MOVCH,OP1

MOVCL,OP2

MOVDH,OP3

MOVDL,OP4

INT10H

MOVAH,02H

MOVBH,00H

MOVDH,00H

MOVDL,00H

INT10H

ENDM

MENUMACROOP1,OP2,OP3

;本段程序主要是通过定义变量和调用来实现菜单显示宏定义

MOVAH,02H

MOVBH,00H

MOVDH,OP1

MOVDL,OP2

INT10H

MOVAH,09H

LEADX,OP3

INT21H

ENDM

DATASEGMENT

ZKDB"WELCOMETOPLAY$"

NODB"DATE:

2014-6-25$"

MEGDB"PRESSENTERKEYTOCONTINUE.......$"

MEG1DB"WHENALETTERISDROPPING,PLEASEHITIT!

$"

MEG2DB"PRESSSPACEKEYTOPAUSE!

$"

MEG3DB"PRESSESCKEYTORETURNMAININTERFACE!

$"

MEG4DB"PRESSLETTER'E'TOEXIT!

$"

SPEEDDW600D

LETTERSDB"JWMILZOEUCGPRAVSKNTXHDYQFB"

DB"IYTPKWNXLSVXRMOFZHGAEBUDJQ"

DB"NWIMZOEXRPHYSFQTVDCGLJUKDA"

LETTERS_BAKDB"JWMILZOEUCGPRAVSKNTXHDYQFB"

DB"IYTPKWNXLSVXRMOFZHGAEBUDJQ"

DB"NWIMZOEXRPHYSFQTVDCGLJUKDA"

LETTER_COUNTERDB0

LIFE_FLAGDB78DUP(0)

POSITION_FLAGDB78DUP(0)

PRESENT_POSITIONDB1

DATAENDS

;本段主要用于主界面的显示,起到提示作用

CSEGSEGMENTPARASTACK'stack'

DB64DUP(0)

ENDS

CODESEGMENT

MAINPROCFAR

ASSUMECS:

CODE,DS:

DATA,SS:

CSEG

START:

MOVAX,DATA

MOVDS,AX

MOVLETTER_COUNTER,00H

MOVPRESENT_POSITION,1

LEASI,POSITION_FLAG

MOVAH,00H

MOVCX,00H

INIT_POSTION_FLAG:

MOV[SI],AH

INCSI

INCCX

CMPCX,78D

JNEINIT_POSTION_FLAG

LEADI,LETTERS

LEASI,LETTERS_BAK

MOVCX,00H

INIT_LETTERS:

MOVAH,[SI]

MOV[DI],AH

INCSI

INCDI

INCCX

CMPCX,78D

JNEINIT_LETTERS

    MOVAH,00H

LEASI,LIFE_FLAG

MOVCX,00H

INIT_LIFE_FLAG:

MOV[SI],AH

INCSI

INCCX

CMPCX,78D

JNEINIT_LIFE_FLAG

MOVCX,00H

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

当前位置:首页 > 经管营销 > 经济市场

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

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