汇编课程设计 2.docx
- 文档编号:12676359
- 上传时间:2023-04-21
- 格式:DOCX
- 页数:19
- 大小:113.77KB
汇编课程设计 2.docx
《汇编课程设计 2.docx》由会员分享,可在线阅读,更多相关《汇编课程设计 2.docx(19页珍藏版)》请在冰豆网上搜索。
汇编课程设计2
武汉理工大学华夏学院
课程设计报告书
课程名称:
汇编程序设计
题目:
显示倒数子对称等腰三角形
系名:
信息工程系
专业班级:
软件1111
姓名:
张
学号:
10
指导教师:
李捷
2013年1月4日
目录
第1章题目..................................................................
第二章设计目的......................................................................
第三章设计内容..................................................................
3.1.程序的功能....................................................................
3.2.程序运行条件....................................................................
3.3.所需工具软件....................................................................
3.4.输入/输出描.....................................................................
第4章程序结构......................................................................
4.1程序结构................................................................................
4.2算法,程序见附录...................................................................
第五章设计步骤........................................................................
第六章程序流程图........................................................................
第七章系统调试及实验结果(输出)....................................
第八章.心得体会........................................................................
第九章附录部分......................................................................
9.1参考文献:
...............................................................................
9.2附录:
源程序代码.................................................................
课程设计任务书
学生姓名:
张专业班级:
软件1111
指导教师:
李捷工作单位:
信息工程系
设计题目:
显示倒数字对称等腰三角形
初始条件:
PC机上实现课程设计
要求完成的主要任务:
1
2
3
4
5
6
7
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
7
6
5
4
3
2
3
4
5
6
7
8
7
6
5
4
3
4
5
6
7
8
7
6
5
4
5
6
7
8
7
6
5
6
7
8
7
6
7
8
7
8
主要任务:
(在规定的时间内完成下列任务)
1.显示倒等腰三角形每行用用彩色(颜色自定)
2.在图形下方循环显示自己的学号和姓名(汉语拼音)
时间安排:
12月29日
布置题目,确定任务、查找相关资料
01月2日~01月3日
功能分析,模块设计,编写程序,调试程序
01月4日
答辩后撰写设计报告。
设计报告撰写格式要求:
(按提供的设计报告统一格式撰写)
1、题目:
2、设计目的:
3、设计内容:
写出简要的程序功能描述、程序运行条件--所需工具软件、输入/输出描述等。
4、程序结构:
①主要的段定义说明;
②用到的子程序(宏)的功能说明、调用关系说明、参数传送方式说明等;
③主要算法描述等(各模块功能实现及典型指令的应用)。
5、设计步骤(注明时间安排)
6、程序流程图、源程序(程序必须有简单注释,源程序若太长,可作为附录)
7、实验结果(输出)
8、其他值得说明的内容
(1)程序结构设计特点;
(2)设计、调试程序心得、体会或不足。
附录:
源程序代码(必须有简单注释)
参考文献
指导教师签字:
2012年12月29日
系主任签字:
年月日
设计报告:
第一章题目:
显示倒数字对称等腰三角形
第二章设计目的
1.巩固和加深课堂所学知识;让同学们了解到在课堂所不能了解的知识,知道什么是汇编。
2.将课本上的理论知识和实际应用有机的结合起来,培养同学们分析和解决实际问题的能力;
3.通过对汇编语言程序代码的阅读、修改、设计,理解和掌握复杂的汇编语言应用程序的编程,提高实践编程能力。
提高同学们的动手能力。
第三章设计内容
3.1.程序的功能
3.1.1.显示倒等腰三角形每行用用彩色(颜色自定)
3.1.2.在图形下方循环显示自己的学号和姓名(汉语拼音)
3.2.程序运行条件
3.2.1用汇编语言编写出完整的程序,然后编译,分步运行,调试每一部分的程序,然后把代码写到记事本上,改一下文件的扩展名asm。
然后利用tddebug
来运行。
注意运行的程序和运行的工具要放在一个文件里。
3.3.所需工具软件
所需要的工具有tddebug.exe,,link.exe,run.exe,obj.exe等工具。
3.4.输入/输出描
在运行程序时要输入程序的名称,然后一步步运行。
最后生成一个obj文件和一个exe文件。
打开exe文件就是程序的输出的数字对称等腰的三角形,还有各种色彩,下面还有自己的学号姓名。
在等腰三角形的外围还环绕着自己的学号。
这是整个程序运行结束后输出的图形。
其余见截图部分。
第四章程序结构
1.算法,程序见附录.
第五章设计步骤
1.得到题目,分析题目,查阅相关书籍和参考资料,和老师进一步的交流了解题目,对设计项目的功能初步了解。
(第一天)
2.初步的完成各个程序的模块化设计,让部分的程序实现要求,初步的完成任务得要求。
(第二天)。
3.对各个模块进行编程,并将其联系到一起,整合程序并调试完成任务的要求(第三、四天)。
4.回答问题并书写实验报告书(第五天)
第6章程序流程图
第7章实验结果(输出)
第8章.心得体会
经过一周的课程设计让我学习到了许多平时在上课的时候学不到的东西,让我更了解汇编语言,更加认识汇编语言的作用,一下是我这几天课程设计的心得体会。
对于这次课程设计,首先是对汇编语言性质的认识,汇编语言是低级语言,是与各种寄存器和堆栈联系紧密的机器底层语言。
之前在课堂上接触到的程序没有针对性,仅仅靠考试和平时的习题远远达不到编程训练的要求,经过这次课程设计之后我才知道我们平时上课学的那只是皮毛中的皮毛,而且要学好汇编必须认真的投入进去。
其次是对汇编语言学习信心的增强。
在学习汇编语言之前我们学过C语言,接触汇编之后感觉这是门复杂的课程,较之高级语言,它代码量大,难懂。
经过这次课程设计之后我了解到只要认真投入地去思考机器是如何进行逻辑思考的并且熟悉指令,汇编语言的趣味性比高级语言更强。
虽然今后的就业方向不一定与汇编息息相关,但作为一个软件工程专业的学生,我们要认真去学习去钻研,过去老师讲课我们总是说听不懂,为这学习委员还找过老师的。
考试是我们每个人都担心的不得了,听说上一届的挂科率太大了,对这门课慢慢就失去了信心。
只要一提到汇编我们就头疼,经过实训我发现汇编也可以和c语言一样有趣,一样让人学到很多东西。
还有就是其实每门课没有所谓的难和易,只要你认真学一切都变得不再那么难。
还有就是不要放弃,不懂就要去弄懂,不要轻易地放弃。
我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。
更重要的是,在实验课上,我们学会了很多学习的方法。
而这是日后最实用的,真的是受益匪浅。
要面对社会的挑战,只有不断的学习、实践,再学习、再实践。
这对于我们的将来也有很大的帮助。
以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。
就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。
回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,但可喜的是最终都得到了解决0想。
设计者:
张安格
日期:
2013年1月6日
第九章.附录部分
9.1参考文献:
1.沈美明.温冬婵.《80X86汇编语言程序设计》清华大学出版社
2.钱晓捷.《汇编语言程序设计》电子工业出本社
3.朱玉龙.任文岚,朱彤.《汇编语言程序设计》清华大学出版社
4.Kipirvine.《inter汇编语言程序设计》电子工业出版社
5.王爽.《汇编语言》清华大学出版社
9.2程序主要代码
DATASEGMENT
NUMDB'10212811105ZhangAnge','$'
colDB00001000b,00000011b,00000100b,11110111b,11110001b;高四位为背景色低四位为字体颜色
DB11110110b,11101111b,11100100b,10000010b,10000101b
XDB0
DATAENDS
STAKSEGMENTSTACK
DW100HDUP(?
)
STAKENDS
CODESEGMENT
ASSUMECS:
CODE,SS:
STAK,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
;========MAIN()===========
CALLCRLF
CALLCRLF
;--------------------------
LOP:
MOVDH,1
MOVCH,01H
LOP1:
;------PRINTSPACE------
MOVCL,4
ADDCL,CH
LOP2A:
CALLSPACE
DECCL
JNZLOP2A
;------PRINT左---BEGIN---
MOVCL,CH
LOP2B:
CMPCL,8
JALOP2BEXIT
MOVAL,CL
CALLDISPLA
INCCL
JMPLOP2B
LOP2BEXIT:
;------PRINT右---BEGIN---
MOVCL,9
SUBCL,CH
MOVBH,7
LOP2C:
DECCL
JZLOP2CEXIT
MOVAL,BH
CALLDISPLA
DECBH
JMPLOP2C
LOP2CEXIT:
;------PRINT右--End-
MOVCL,4
ADDCL,CH
LOP2D:
CALLSPACE
DECCL
JNZLOP2D
CALLCRLF
INCCH
CMPCH,8
JBELOP1
;============================
MOVDX,OFFSETNUM
CALLXH
MOVAH,9
INT21H
MOVAH,1
INT21H
;===========================
MOVAX,4C00H
INT21H
;------------------------
CRLFPROCNEAR
PUSHAX
PUSHDX
MOVAH,2
MOVDL,0AH
INT21H
MOVDL,0DH
INT21H
POPDX
POPAX
RET
CRLFENDP
;
OUTXPROCNEAR
PUSHAX
PUSHDX
MOVAH,2
INT21H
POPDX
POPAX
RET
OUTXENDP
;-----------------------
SPACEPROCNEAR
PUSHAX
PUSHDX
;MOVAH,2
MOVDL,''
PUSHCX
PUSHDX
MOVDH,CH
CALLWriteCC
POPDX
POPCX
;INT21H
POPDX
POPAX
RET
SPACEENDP
;----------------------------
DISPLAPROCNEAR
PUSHDX
MOVDL,AL
ADDDL,'0'
PUSHCX
PUSHDX
MOVDH,CH
CALLWriteCC
POPDX
POPCX
;CALLOUTX
POPDX
RET
DISPLAENDP
;colDB00001000b,00000011b,00000100b,11110111b,11110001b高四位为背景色低四位为字体颜色
;DB11110110b,11101111b,11100000b,10000010b,10000101b
WriteCCPROCnear
pushax
pushbx
pushcx
pushdx
pushsi
xorah,ah
moval,dh
movsi,ax
movah,9
moval,dl
movbh,0
movbl,col[si]
andbl,0fh
movcx,1
int10h
movah,3
int10h
movah,2
incdl
int10h
popsi
popdx
popcx
popbx
popax
ret
WriteCCENDP
ClrscrPROCnear;清屏
pushax
pushbx
pushcx
pushdx
movax,0600h
movcx,0
movdx,184Fh
movbh,7
int10h
movah,2
movbh,0
movdx,0
int10h
popdx
popcx
popbx
popax
ret
ClrscrENDP
XHPROCnear
MOVCX,1001H
MOVSI,OFFSETNUM
LOP3:
CALLNB
CALLDELAY
CALLDELAY
CALLClrscr
CALLCD
CMPCX,0
JNZLOP3
XHENDP
;------------------------
NBPROCNEAR;学号输出
PUSHAX
MOVAH,9
INT21H
POPAX
RET
NBENDP
;-------------------------
DELAYPROCNEAR;延时
PUSHAX
PUSHCX
PUSHBX
MOVBX,1600H
JX:
MOVCX,1600H
GOON:
MOVAX,0
INCAX
INCAX
INCAX
LOOPGOON
DECBX
JNZJX
POPBX
POPCX
POPAX
RET
DELAYENDP
;----------------------
CDPROCNEAR;字符串段内移位
PUSHAX
PUSHDI
PUSHSI
MOVAH,[SI]
MOVDI,21H
CIR3:
MOVAL,[SI+1];字符串内存中循环移动
MOV[SI],AL
INCSI
DECDI
CMPDI,0
JACIR3
MOV[SI],AH
JMPLOP
POPSI
POPDI
POPAX
RET
CDENDP
CODEENDS
ENDSTART
设计过程中质疑(或答辩)记载:
1.通过这次汇编课程设计后,谈你的体会?
答:
通过这次的课程设计我发现之前在课堂上接触到的程序没有针对性,仅仅靠考试和平时的习题远远达不到编程训练的要求,经过这次课程设计之后我才知道我们平时上课学的那只是很小的一部分,我们要想学好课程设计必须自己亲自动手亲手实践才会找到不足,才会提高自己。
2.课程设计中,你用最多时间完成任务功能是哪个?
答:
在课程设计中我花的时间最长的是在等腰三角形外面加上自己的学号,这个问题花了我很长时间,最后在老师还有同学的帮助下终于完成了。
这个要用到指针而且左右两面。
3.设计中是自己独立的完成还是几个同学一起合作完成?
答:
设计中是两个人或者三个人在一起讨论的,不管是在颜色设置还是学号的嵌入,都有讨论过。
一个人不能解决的问题经过讨论就会出现结果。
而且每个人的思维不一样,想法的切入点也不一样,这样就会有多种方法,或者彼此相互提醒。
这样可以把程序设计的更加完美,达到更理想的效果。
指导教师评语:
评分:
签名:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编课程设计 汇编 课程设计