汇编语言课程设计1.docx

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

汇编语言课程设计1.docx

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

汇编语言课程设计1.docx

汇编语言课程设计1

目录

1.设计任务1

2.设计目的1

3.设计思想1

4.概要设计1

5.详细设计3

6.程序代码3

7.程序调试12

8.课设小结13

参考文献13

1.设计任务

在本次课程设计中,我组报的是编写打字游戏,该程序可以分辨输入的自与系统给出的字的相同与否,并作出相应的颜色处理。

2.设计目的

本次课程设计的目的主要是将课堂上所学的知识学以致用,并同过程序的制作过程学习课外的新知识,加强加深对知识的理解与掌握,并通过小组团结合作,发挥每个人的力量使任务更加生动有趣。

3.设计思想

程序首先定义一个hello的函数调用int21hmovah,09来显示字符串,ds:

dx定义字符串位置来使用一个80×25的界面使整个程序更加美观

游戏主程序调用BIOSint10的9号功能实现对目标文本的颜色和定位,。

游戏主程序可以用int16movah,00从键盘读取输入的字符在调用int21movah,01让键盘输入显示在屏幕中al=输入的字符,用cmp指令对输入的文本和目标文本进行比较,再利用选择语句将错误的输入字符显示为红色,将正确的输入字符显示为绿色。

在整个字符串结束后直接退到dos环境

 

4.概要设计

图1流程图

 

5.详细设计

程序首先定义一个hello的函数调用int21hmovah,09来显示字符串,ds:

dx定义字符串位置来使用一个80×25的界面使整个程序更加美观。

程序定义了choosepage函数来实现页面的转换

choosepageprocnear

moval,pg

movah,05h

int10h

ret

choosepageendp

它使可以产生新的页面,让程序的分布更加人性化。

游戏主程序调用BIOSint10的9号功能实现对目标文本的颜色和定位,。

游戏主程序可以用int16movah,00从键盘读取输入的字符在调用int21movah,01让键盘输入显示在屏幕中al=输入的字符,将键盘输入的字符与目标文本进行比较用cmp指令对输入的文本和目标文本进行比较,再利用选择语句将错误的输入字符显示为红色,将正确的输入字符显示为绿色。

在整个字符串结束后直接退到dos环境

 

6.程序代码

datasegment

stringdb'-----%%%****@@--welcometomygame!

!

----%%%%***@@@---','$'

authordb'----ShujunWuliangwangyingying---','$'

enter1db'1:

testword!

'

countequ$-enter1

ydb'abcdefdfdfslhkladlfjdljflddljfwefoooddddAAAA','$'

count1equ$-y

pgdb?

colordb?

dataends

codesegment

assumecs:

code,ds:

data

start:

movax,data

movds,ax

callhello;jiemian

movah,4ch

int21h

;-----------------procofwindow---------------

helloprocnear

movah,00h;choosemode80*25

moval,03h

int10h

movpg,1

callchoosepage

movdh,7

movdl,6

calllocate

leadx,string

movah,09h

int21h

movdh,11;都在置光标前将行为11

movdl,25

calllocate

movsi,-1

;------showword--------

inin:

incsi

cmpsi,count

jzout1

movah,09h

movbh,1

moval,enter1[si]

movbl,03h;colorofletter

int10h

incdl

calllocate

jmpinin

out1:

movdh,14

movdl,9

calllocate

leadx,author

movah,09h

int21h

movah,00h

int16h

cmpal,27

jzexit

cmpal,0dh

jnzout1

callgame

exit:

movpg,0

callchoosepage

movah,4ch

int21h

ret

helloendp

;-------------locatecursor------

locateprocnear

movah,02h

movbh,1

int10h

ret

locateendp

;----------------chooseanewpage-------

choosepageprocnear

moval,pg

movah,05h

int10h

ret

choosepageendp

;-------------gameproc-----------

gameprocnear

movpg,2

callchoosepage

leadx,y

movah,09h

int21h

movdl,0dh

movah,02h

int21h

movdl,0ah

movah,02h

int21h

movsi,-1

ingame:

incsi

cmpsi,count1-1

jgeoutgame

movah,01h

int21h

cmpal,27

jzoutgame1

cmpal,y[si]

jnzwrong

cmpal,''

jzblankcolor

movcolor,03;ifrightchangecolor

blankcolor1:

movbx,si

movdl,bl

movdh,1

movbh,2

movah,02h

int10h

;-----换色调用int10的9号功能书上478页-----

movah,09h

movbl,color

movbh,2

movcx,1

int10h

incdl

movah,02h

int10h

jmpingame

blankcolor:

movcolor,33h

jmpblankcolor1

wrong:

cmpal,''

jzblankcolor2

movcolor,04;ifwrongchangecolor

wrong1:

movbx,si

movdl,bl

movdh,1

movbh,2

movah,02h

int10h

movah,09h

movbl,color

movbh,2

movcx,1

int10h

incdl

movah,02h

int10h

jmpingame

blankcolor2:

movcolor,44

jmpwrong1

outgame:

movah,00h

int16h

outgame1:

movpg,0

callchoosepage

movah,4ch

int21h

ret

gameendp

codeends

endstart

 

7.程序调试

在将程序初完成后进行并没有立刻进行调试而是在windows环境下用记事本打开程序对其进行说明注释,由于使用了中文,所以回到dos环境时出现了乱码但并没有对程序的运行造成影响。

第一次调试时,程序没有分页,使得打字界面和欢迎界面在一个屏幕上同时出现,让用户感觉非常不美观。

故在程序中加入了choosepage函数,这样把欢迎界面和主界面分在两个页面中显示。

程序对一般的字符输入可以准确地进行分辨但对空格键则不会作出任何处理。

在程序中加入了对空格的分辨。

用blankcolor对其进行颜色处理。

程序在目标文本没有打完时,不会退出。

在程序中加入了函数,使程序可以在目标文本没有打完时用ESC键直接退出程序,进入dos环境。

8.课设小结

本次课程设计让我们充分了解了汇编在实际软件开发中的作用和地位。

在这次课程设计过程中我们把课堂上的知识充分运用了还是不能完成实际软件开发。

这说明程序开发是不能够停留在书本上的,想要把程序作好,必须要不断通过各种途径掌握更多更好的知识,并且最重要的是要将获得的知识运用到实际编程中,要学以致用。

本次课程设计是自由分组、自由选题。

我们可以充分根据我们的兴趣和长处,选择题目,所以这次课程设计是非常顺利的。

这次让我们体会到了团队通力合作的快乐和强大力量。

我们三个按各自分配的任务,做好各个小块后,再把它们合并起来,这样程序才得以完成。

一个星期的时间并不是太长。

但团队的合作使任务如时完成。

在编程中我们遇到了很多问题和麻烦,其中有一些的确让我们束手无策。

我们就在网上和图书馆还有班上同学中寻找答复。

没有不可克服的困难。

我们都在最后将他们解决了。

9.参考文献

1.温冬蝉、沈美明,《IBMPC汇编语言程序设计》(第2版),北京:

清华大学出版社,、2002.3

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

当前位置:首页 > 小学教育 > 学科竞赛

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

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