微机原理课程设计实验报告Word格式文档下载.docx
《微机原理课程设计实验报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计实验报告Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。
年月日
1、课程设计的目的……………………………………………………1
2、设计题目……………………………………………………………1
3、设计内容要求………………………………………………………2
4、设计成员及分工……………………………………………………2
5、课程设计的主要步骤………………………………………………2
6、课程设计原理及方案………………………………………………3
7、实现方法……………………………………………………………3
8、实施结果……………………………………………………………8
9、总结…………………………………………………………………8
10、体会感受……………………………………………………………8
一、课程设计的目的
课程设计是以自己动手动脑,亲手设计与调试的。
它将基本技能训练、基本工艺知识和创新启蒙有机结合,培养我们的实践和创新能力。
课程设计的意义,不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力。
作为信息时代的大学生,基本的动手能力是一切工作和创造的基础和必要条件。
课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识解决实际工程设计和应用问题的能力的重要教学环节,它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。
《微机原理及应用》是一门应用性、综合性、实践性较强的课程,没有实际的有针对性的设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解决实际问题的能力。
所以通过有针对性的课程设计,使学生学会系统地综合运用所学的理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握微机硬软件设计方法。
通过课程设计实践,不仅要培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅专业资料、工具书或参考书,掌握工程设计手段和软件工具,并能以图纸和说明书等表达设计思想和结果的能力。
培养学生事实求是和严肃认真的工作态度。
通过设计过程,要求学生熟悉和掌握微机系统的软件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。
让学生独立或集体讨论设计题目的系统方案论证设计、编程、软件调试、查阅资料、编写说明书等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。
通过本次课程设计使学生熟练的熟练掌握微机系统的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的软件调试方法和步骤,熟悉微机系统的软件开发工具的使用方法。
二、设计题目
三、设计内容要求
1、菜单
内容包括:
输入字符串;
字符串动画显示;
退出。
2、输入字符串
选择该项后,可以输入一个字符串。
该字符串即为动画显示时所显示的字符串。
3、字符串动画显示
所显示字符串在一矩形框内从无到有,一半从左另一半从右向中间移动,当两半相遇时停止移动,当按下R键后重复从两边到中间移动的动作,直到按下Q键,停止字符串动画显示返回到主菜单。
4、在主菜单中选择退出项,则结束程序返回DOS。
四、设计成员及分工
我主要负责程序的生成和初步调试
五、课程设计的主要步骤
课程设计可以分为硬件设计和软件设计两个部分,其设计过程可以归纳为以下所述的四个步骤:
1.总体设计
本阶段的任务是通过调查研究,查阅资料来初步确定系统结构的总体方案,其中主要涉及到硬件和软件的功能划分。
应用系统中硬件和软件具有一定的互换性,即某些功能既可以用硬件实现也可以用软件实现。
一般说来,用硬件实现的优点是可以提高系统的工作速度,但会增加电路的复杂性和硬件成本;
而用软件代替某些硬件的功能可以使电路简化,便于修改设计,降低硬件成本,但软件工作量增大。
总体设计时,必须在硬件和软件之间权衡,分工明确,然后分头开始设计
2.硬件设计过程
利用实验箱的硬件资源,结合课程设计题目,设计硬件原理图,搭建硬件电路。
3.软件设计过程
(1)采用模块化程序结构设计软件,可将整个软件分成若干功能模块。
(2)画出程序流程图。
(3)根据流程图,编写源程序。
(4)上机调试程序
4.软、硬件联调
六、课程设计原理及方案
主程序流程图
七、实现方法
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE
START:
MOVAX,CODE
MOVDS,AX
MOVAX,0B800H
MOVES,AX
CLD
AGAIN:
MOVAX,3
INT10H
LEADX,MENU
MOVAH,9
INT21H
INPUT:
MOVAH,0
INT16H
CMPAL,'
1'
JNZCP2
CALLSUB01
JMPINPUT
CP2:
2'
JNZCP3
CALLSUB02
JMPAGAIN
CP3:
3'
JNZINPUT
LEADX,MESG
MOVAH,1
MOVAH,4CH
DELAYPROC
PUSHCX
PUSHDX
MOVDX,1000
D1:
MOVCX,0FFFFH
LOOP$
DECDX
JNZD1
POPDX
POPCX
RET
DELAYENDP
SUB01:
MOVAX,0E0DH
MOVAL,0AH
LEADX,STR
MOVAH,0AH
MOVAX,0E0AH
SUB02:
CMPSTR+1,2
JNBY2
JMPQUIT
Y2:
CALLLINE
@Y2:
XORAX,AX
MOVCNT1,AX
MOVCNT5,AX
MOVDL,60-2
MOVAL,STR+1
SUBDL,AL
MOVDH,0
MOVCNT3,DX
MOVBL,AL
INCAL
SHRAL,1
CBW
MOVCNT2,AX
SUBBL,AL
MOVBH,0
MOVCNT4,BX
Y3:
MOVBP,ES
PUSHDS
POPES
MOVDI,1000H
MOVCX,CNT1
JCXZU1
MOVAL,20H
REPSTOSB
U1:
LEASI,BUF
MOVCX,CNT2
REPMOVSB
MOVCX,CNT3
JCXZU2
U2:
MOVCX,CNT4
MOVCX,CNT5
JCXZU3
U3:
SHOW:
MOVES,BP
MOVSI,1000H
MOVDI,LEFT
MOVCX,60-2
PPP:
LODSB
STOSW
LOOPPPP
CALLDELAY
CMPCNT3,0
JZ@INPUT
INCCNT1
INCCNT5
DECCNT3
JZKK2
KK2:
JMPY3
@INPUT:
CMPAH,10H
JZSSS
CMPAH,13H
JNZ@INPUT
JNZ@REP
JMP@Y2
@REP:
JMPY3
SSS:
MOVSTR+1,0
QUIT:
LEASI,CNT1
MOVCX,5
KK3:
MOV[SI],AX
INCSI
LOOPKK3
XORDI,DI
MOVCX,80*25
MOVAX,720H
REPSTOSW
LINE:
MOVDI,(18*80+10)*2
MOVAL,201
MOVAH,0EH
MOVAL,205
MOVAL,187
ADDDI,20*2
MOVAL,186
MOVLEFT,DI
MOVRIGHT,DI
MOVAL,200
MOVAL,188
MENUDB5DUP(0AH)
DB31DUP('
'
),'
MAINMENU'
0DH,0AH
DB25DUP('
),201,21DUP(205),187,0DH,0AH
),186,'
1.INPUTASTRING...'
186,0DH,0AH
2.DISPLAYMODEL...'
3.RETURNTODOS...'
),200,21DUP(205),188,0DH,0AH
DB28DUP('
CHOICE(1,2,3):
$'
MESGDB0DH,0AH,0DH,0AH,9,'
PRESSANYKEYTOEXIT...$'
CNT1DW0
CNT2DW0
CNT3DW0
CNT4DW0
CNT5DW0
NUMDW2
LEFTDW0
RIGHTDW0
STRDB21
DB0
BUFDB0DH,20DUP(0)
CODEENDS
ENDSTART
八、实施结果
九、总结
总的来说,在整个设计的过程中,对文件的知识有了相当程度的了解掌握,基本上学会了对图的操作等。
在对文件的自学过程中也认识,在学习的过程中要灵活的把所学的知识运用到实践当中,并且还要巩固练习和运用,这样才可以牢牢的记住。
试验也对数据结构的知识进行了复习,尤其是结构体的定义、地址与引用的合理使用以及记录指针的使用也认识到数据结构在实践运用中的重要性,在对程序不断的修改和逐步改进提升的过程中,积累了不少经验,为在以后的学习和实践应用奠定了一定的基础。
一十、体会感受
通过对这程序的制作,使我对汇编语言的基本知识的使用更加熟练,同时也增加了我对汇编语言的一些认识,在作业完成过程中通过和同学的交流,也增加了合作的技巧。
通过查阅资料也学到了一些课本上没有的东西,拓宽了自己的知识面,增加了学好汇编语言的信心。
在这次课程设计中,我真正体会到了合作的重