没有合适的资源?快使用搜索试试~ 我知道了~
首页汇编语言 打字练习 课程设计
资源详情
资源评论
资源推荐
设计(论文)说明书用纸 NO.1
沈 阳 大 学
设计(论文)说明书用纸 NO.4
打 打字练习
一.程序目的
汇编语言是一项实用性很强的技术,只有进行实际操作,将理论应用于实际中,才
能确实掌握书中的知识点。通过设计开发汇编软件,不仅可以加深学生对汇编程序基本
概念的了解,巩固学习成果;还能够提高实际动手能力及对计算机硬件的了解,掌握计
算机软件与硬件之间的联系。为学生后续课程的学习,打下良好的基础。
二.程序内容
通过对汇编语言的认识编写一个打字游戏程序,在屏幕上设计字母,让他随机下落,正
确按键字母消失,按空格键暂停,再按一次开始,显示时间,按回车键继续,按’E’退出程
序,按 ESC 返回界面.
三.设计功能分析
1.本设计的功能如下:
1) 屏幕的顶端排列一排英文字母,底端对应排列一排小球或小方块.
2) 屏幕顶端的英文字母以一定的速度随机下落, 落到底端的小球或小方块处, 小
球或小方块消失.
3) 在英文字母落到底端前,正确按键(落下的英文字母的键位),则英文字母消失.
4) 按空格键则暂停,再按空格键字母继续下落.
5) 英文字母消失或落到底端后,顶端原字母的空处出现另一新字母.
6) 底端小球或小方块消失后,不再出现.
7) 程序执行后,出现新界面.新界面应包含以下内容:
a) 显示时间
b) 按回车键继续
c) 按 ESC 键返回主界面
d) 按’E’键退出程序
2.设计功能详解:
沈 阳 大 学
设计(论文)说明书用纸 NO.5
四.源程序代码
Init_game macro op1,op2,op3,op4,op5,op6
mov cx,00h
mov dh,op1
mov dl,op2
op6:mov ah,02h
mov bh,00h
int 10h
push cx
mov ah,0ah
mov al,op3
mov bh,00h
mov cx,01h
int 10h
pop cx
inc cx
inc op4
cmp cx,op5
jne op6
endm
clear_screen macro op1,op2,op3,op4 ;清屏宏定义
mov ah,06h
mov al,00h
mov bh,07h
mov ch,op1
mov cl,op2
mov dh,op3
mov dl,op4
int 10h
mov ah,02h
mov bh,00h
mov dh,00h
mov dl,00h
int 10h
endm
menu macro op1,op2,op3 ;菜单显示宏定义
mov ah,02h
mov bh,00h
mov dh,op1
mov dl,op2
int 10h
mov ah,09h
lea dx,op3
int 21h
endm
data segment
ZK db "WELCOME TO PLAY$"
no db "date:2003/6/24$"
meg db "press Enter key to continue.......$"
meg1 db "when a letter is dropping,please hit it!$"
meg2 db "press space key to pause!$"
meg3 db "press ESC key to return main interface!$"
meg4 db "press letter 'E' to exit!$"
speed dw 600d
letters db "jwmilzoeucgpravskntxhdyqfb"
db "iytpkwnxlsvxrmofzhgaebudjq"
db "nwimzoexrphysfqtvdcgljukda"
letters_bak db "jwmilzoeucgpravskntxhdyqfb"
db "iytpkwnxlsvxrmofzhgaebudjq"
db "nwimzoexrphysfqtvdcgljukda"
letter_counter db 0
life_flag db 78 dup(0)
position_flag db 78 dup(0)
present_position db 1
data ends
stack segment para stack 'stack'
db 64 dup(0)
stack ends
沈 阳 大 学
设计(论文)说明书用纸 NO.6
code segment
main proc far
assume cs:code,ds:data,ss:stack
start: mov ax,data
mov ds,ax
mov letter_counter,00h
mov present_position,1
lea si,position_flag
mov ah,00h
mov cx,00h
init_postion_flag:
mov [si],ah
inc si
inc cx
cmp cx,78d
jne init_postion_flag
lea di,letters
lea si,letters_bak
mov cx,00h
init_letters:
mov ah,[si]
mov [di],ah
inc si
inc di
inc cx
cmp cx,78d
jne init_letters
mov ah,00h
lea si,life_flag
mov cx,00h
init_life_flag:
mov [si],ah
inc si
inc cx
沈 阳 大 学
设计(论文)说明书用纸 NO.7
cmp cx,78d
jne init_life_flag
mov cx,00h
mov ah,01h
or ch,00010000b
int 10h
clear_screen 00d,00d,24d,79d
Init_game 00d,00d,0ah,dl,80d,nextsign1
Init_game 24d,00d,0ah,dl,80d,nextsign2
Init_game 00d,00d,0ah,dh,25d,nextsign3
Init_game 00d,79d,0ah,dh,25d,nextsign4
menu 05d,15d,ZK ;菜单信息的宏调用
menu 07h,15d,no
menu 09d,15d,meg
menu 11d,15d,meg1
menu 13d,15d,meg2
menu 15d,15d,meg3
menu 17d,15d,meg4
put: mov ah,02h ;设置光标位置
mov bh,00h
mov dh,22d
mov dl,33d
int 10h
mov ah,01h ;从键盘输入任意字符
int 21h
cmp al,0dh
je speed3
cmp al,45h
je exit
exit: mov ah,4ch
int 21h
speed3: mov ax,speed+12
mov speed,ax
jmp begin
剩余19页未读,继续阅读
helina_
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
- MW全能培训汽轮机调节保安系统PPT教学课件.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0