微机原理实训报告完整.docx

上传人:b****8 文档编号:9932540 上传时间:2023-05-22 格式:DOCX 页数:20 大小:464.68KB
下载 相关 举报
微机原理实训报告完整.docx_第1页
第1页 / 共20页
微机原理实训报告完整.docx_第2页
第2页 / 共20页
微机原理实训报告完整.docx_第3页
第3页 / 共20页
微机原理实训报告完整.docx_第4页
第4页 / 共20页
微机原理实训报告完整.docx_第5页
第5页 / 共20页
微机原理实训报告完整.docx_第6页
第6页 / 共20页
微机原理实训报告完整.docx_第7页
第7页 / 共20页
微机原理实训报告完整.docx_第8页
第8页 / 共20页
微机原理实训报告完整.docx_第9页
第9页 / 共20页
微机原理实训报告完整.docx_第10页
第10页 / 共20页
微机原理实训报告完整.docx_第11页
第11页 / 共20页
微机原理实训报告完整.docx_第12页
第12页 / 共20页
微机原理实训报告完整.docx_第13页
第13页 / 共20页
微机原理实训报告完整.docx_第14页
第14页 / 共20页
微机原理实训报告完整.docx_第15页
第15页 / 共20页
微机原理实训报告完整.docx_第16页
第16页 / 共20页
微机原理实训报告完整.docx_第17页
第17页 / 共20页
微机原理实训报告完整.docx_第18页
第18页 / 共20页
微机原理实训报告完整.docx_第19页
第19页 / 共20页
微机原理实训报告完整.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

微机原理实训报告完整.docx

《微机原理实训报告完整.docx》由会员分享,可在线阅读,更多相关《微机原理实训报告完整.docx(20页珍藏版)》请在冰点文库上搜索。

微机原理实训报告完整.docx

微机原理实训报告完整

一、设计目的

通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。

通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。

为以后学生结合专业从事微机应用设计奠定基础。

二、设计的原始资料及依据

(1)查阅微机原理及应用、汇编语言程序设计等书籍;

(2)掌握字符串的输入,输出和排序。

三、设计的主要内容及要求

内容:

从PC键盘输入5个字符串,排序及显示要求

1)输入5个字符串。

2)对输入的字符串进行排序并正确显示。

四、对设计说明书撰写内容、格式、字数的要求

1.课程设计说明书(论文)是体现和总结课程设计成果的载体,一般不应少于3000字。

2.学生应撰写的内容为:

目录、正文、参考文献等。

课程设计说明书(论文)的结构及各部分内容要求可参照《沈阳工程学院毕业设计(论文)撰写规范》执行。

应做到文理通顺,内容正确完整,书写工整,装订整齐。

3.说明书(论文)手写或打印均可。

手写要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;打印时按《沈阳工程学院毕业设计(论文)撰写规范》的要求进行打印。

4.课程设计说明书(论文)装订顺序为:

封面、任务书、成绩评定表、目录、正文、总结、参考文献。

五、设计完成后应提交成果的种类、数量、质量等方面的要求;

提交课程设计说明书一份。

在说明书中要有设计原理、硬件电路接线图、设计的程序及必要注释等。

六、时间进度安排;

顺序

阶段日期

计划完成内容

备注

1

1.0天

查阅资料及程序设计

2

2.0天

上机调试程序

3

0.5天

成绩评定

4

0.5天

书写报告

沈阳工程学院

微机原理及汇编语言程序设计程设计成绩评定表

系(部):

信息学院班级:

学生姓名:

指导教师评审意见

评价

内容

具体要求

权重

评分

加权分

调研

论证

能独立查阅文献,收集资料;能制定课程设计方案和日程安排。

0.1

5

4

3

2

工作能力

态度

工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,

0.2

5

4

3

2

工作量

按期圆满完成规定的设计任务,工作量饱满,难度适宜。

0.2

5

4

3

2

说明书的质量

说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。

0.5

5

4

3

2

指导教师评审成绩

(加权分合计乘以12)

加权分合计

指导教师签名:

年月日

评阅教师评审意见

评价

内容

具体要求

权重

评分

加权分

查阅

文献

查阅文献有一定广泛性;有综合归纳资料的能力

0.2

5

4

3

2

工作量

工作量饱满,难度适中。

0.5

5

4

3

2

说明书的质量

说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。

0.3

5

4

3

2

评阅教师评审成绩

(加权分合计乘以8)

加权分合计

评阅教师签名:

年月日

课程设计总评成绩

 

 

 

第1章绪论

1.1背景

计算机技术作为信息化的核心技术受到全社会的普遍重视。

如今,计算机的使用也

已不再局限于科学计算,它已进入人类社会的各个领域并发挥着越来越重要的作用。

深入掌握计算机专业知识、具有良好系统设计与分析能力的计算机高级专业人才在社会上深受欢迎。

而系统设计与分析能力的培养需要通过实践训练才能获得。

通过计算机对一些系统的管理已经成为一种系统、便捷的方式。

本课程设计就是用汇编语言程序设计完成字符串排序问题,实现对字符串的输入、排序和输出的操作。

1.2设计目的与任务

1.2.1本课程设计的目的

1.课程设计是电子信息类专业重要的实践教学环节。

设置课程设计的目的是加强学生对本课程及相关课程知识的理解,培养学生综合运用理论知识分析解决实际问题的方法与能力。

有助于提高学生的创新能力和创新意识。

搞好课程设计教学工作,对实现专业培养目标,提高学生全面素质有重要作用。

2.通过课程设计更进一步理解微机原理和汇编语言的基础知识。

3.训练用系统的观点和软件开发一般规范进行软件开发,并在此过程中培养严谨的科学态度和良好的工作作风。

初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能。

4.熟练掌握微机原理知识在程序中的应用,了解书本知识在解决实际问题下的用途。

1.2.2本课程设计的任务

运用所学微机原理知识实现从PC键盘输入5个字符串,排序及显示操作。

第2章汇编语言的运行环境及运行步骤

2.1汇编语言的起源

汇编语言是一种面向机器的程序设计语言。

在汇编语言中,是用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址,如此就增强了程序的可读性和编写难度,像这样符号化的程序设计语言就是汇编语言,因此亦称为符号语言。

使用汇编语言编写的程序,机器不能直接识别,还要由汇编程序或者叫汇编语言编译器转换成机器指令。

早期的操作系统等系统软件主要是用汇编语言编写的(包括UNIX操作系统在内)。

由于汇编语言依赖于计算机硬件,程序的可读性和可移植性都比较差。

2.2汇编语言的特点

2.2.1能够保持机器语言的一致性,直接、简捷

因为用汇编语言设计的程序最终被转换成机器指令,故能够保持机器语言的一致性,直接、简捷,并能像机器指令一样访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。

使用汇编语言可以访问所有能够被访问的软、硬件资源。

2.2.2目标代码简短,占用内存少,执行速度快

汇编语言是一种高效的程序设计语言,它经常与高级语言配合使用,以改善程序的执行速度和效率,弥补高级语言在硬件控制方面的不足,应用十分广泛。

2.2.3汇编语言是面向机器的

它处于整个计算机语言层次结构的底层,故被视为一种低级语言,通常是为特定的计算机或系列计算机专门设计的。

2.2.4难于从汇编语言代码上理解程序设计意图,可维护性差

即使是完成简单的工作也需要大量的汇编语言代码,很容易产生bug,难于调试

2.2.5高速度和高效率

汇编语言保持了机器语言的优点,具有直接和简捷的特点,可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等,且占用内存少,执行速度快,是高效的程序设计语言。

2.3汇编语言的运行环境

对于广泛使用的个人计算机来说,可以自由选择的汇编语言编译器有MASM、NASM、TASM、FASM、RADASM等,常用运行软件界面如图2.1。

 

图2.1Wmd86的运行界面

2.4汇编语言的运行步骤

在常用的汇编语言的运行中本次程序设计我们选择了Wmd86运行还境,它的运行步骤如下:

(1)运行Wmd86软件,进入Wmd86窗口,即Wmd86集成开发环境。

(2)根据程序设计使用语言的不同,通过“设置”菜单选择需要的语言。

如图2.2所示。

图2.2选择程序设计语言

(3)点击新建按钮或文件菜单的新建。

实验程序的默认文件名为Wmd861.asm。

(4)编写实验程序并以.asm为名保存.

(5)点击

,编译程序。

若程序无错,则输出图2.3所示的输出信息。

然后点击

,进行链接。

若无错输出图2.4所示的输出信息。

若有错应重复(4),此时对程序进行修改,直到编译和链接无错,进入(6)。

图2.3编译输出信息

图2.4链接输出信息

(6)打开实验系统电源。

(7)点击

,加载程序。

点击

为编译、链接、加载一次完成。

加载成功后,在输出区会显示“加载成功!

”,表示程序已正确下载。

起始执行语句上会有一条绿色的背景。

如图2.5所示。

 

图2.5加载成功输出信息

(8)加载成功后,点击单步

按钮执行两行命令。

(9)点击执行按钮

连续执行程序,然后点击停止按钮

,停止程序的执行,检查程序执行结果。

第3章总体设计思路

3.1功能设计分析

3.1.1设计思路分析

(1)通过键盘输入5个字符串,以‘﹩’表示结束;

(2)通过冒泡排序法给这5个字符串按照从大到小的顺序排序;

(3)按照排序后的字符串依次输出出来。

3.1.2系统功能分析:

主要包含以下多种功能:

输入:

输入5个字符串

排序:

利用冒泡排序法给字符串排序

输出:

按顺序输出字符串

3.2总体设计分析

3.2.1系统功能模块图

如图3.1所示:

3.2.2具体设计方案

1.输入

创建一个子程序输入函数,利用跳转指令依次输入5个长度在5个字符之内的字符串,每个字符串后以'$'作为结束标志。

2.排序

将输入的字符串按对应的位置比较相应字符的大小,大的放前面,小的放后面,且每次都用冒泡排序算法进行排序。

3.输出

利用跳转指令将排完顺序的字符串按顺序输出出来。

 

 

\

 

图3.1系统功能模块图

第4章程序实现

4.1运行程序

4.1.1单步运行

加载成功后,点击单步

按钮执行两行命令,注意寄存器区中DS等寄存器值的变化,如图4.1所示。

 

图4.1单步运行截图

4.1.2暂停执行程序

然后点击停止按钮

,停止程序的执行,检查程序执行结果。

4.1.3连续运行程序

点击执行按钮

连续执行程序。

4.2各个模块程序流程图设计

4.2.1第一模块输入字符串

输入字符串流程图如图4.2所示。

图4.2输入字符串流程图

4.2.2第二模块字符串排序

字符串排序流程图如图4.3所示。

 

 

 

图4.3字符串排序流程图

4.2.3第三模块输出字符串

输出字符串流程图如图4.4所示。

图4.4字符串输出流程图

第5章遇到问题及解决方法

5.1所遇到的问题

1.编写源程序时,初始阶段没有把握好题目大意,误将对字符串的排序当成字符的排序;

2.编写排序函数每次循环比较时,没有每次只取一次存储的首地址;

3.排序结束以后无法跳转到输出程序

5.2对应问题的解决方法

1.经过我组成员的细心检查后,我们开始重新分工,编写程序;

2.经过李老师的指导后,我们更改了部分程序,完成了程序的排序功能;

3.进行设置断点逐句运行,并且逐句检查是否有逻辑错误,最终检查到取首地址位置有些问题,改正后系统正常运行。

 

总结

本次的课程设计,使我们对微机原理及应用这门学科有了更深层次的认识,我们克服了很多在程序设计上的难点,结尾更是让我体会到了冲出重围的幸福与喜悦。

我想微机原理课程设计和其他课程设计有共同的地方,那就是不仅加深和巩固了我们的课本知识,而且增强了我们自己动脑,动手的能力。

通过对微机原理及汇编语言程序设计的课程设计,我了解并发现了很多调试程序的方法,而且懂得了如何处理错误的方法。

小组成员的通力合作和大家的共同努力保证了课程设计每一步的顺利进行。

至今我仍感慨颇多,从选题到定稿,从理论到实践,在整整一个星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的东西。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。

在设计的过程中遇到问题,可以说得是困难重重,课设过程中难免会遇到过各种各样的问题,最后通过老师和同学的帮助下才得以顺利完成。

这次实验并不是很难,主要的困难来自对程序的理解。

功夫不负有心人,经过5个人的合作和努力,我们最后对实验的原理有了清晰的认识。

虽然实验台上的很多模块单元没有用到,但是就系统功能来说,我觉得我们做的还是不错的。

这次课设让我们对实验台有了足够的了解,让我们知道了实验台上各个模块的用法;而且它还让我们对自己动手写程序来控制实验台的运作有了一定的基础。

虽然实验台只是一个小型的模拟平台,但是通过对它的学习和操作,我们对有关接口的知识将会有一个更广泛的认识,而且它对我们以后的学习也会有帮助的。

总之,这次课程设计对于我们有很大的帮助,通过课程设计,我更加深入地理解,微机原理课程上讲到的各种芯片的功能,以及引脚的作用,同时加深了对于主要芯片的应用的认识,同时在试验室的环境里熟悉了汇编程序的编写过程和运行过程,最后还提高了自己的动手能力。

最后也要感谢老师的悉心指导,对我们的循循善诱。

 

致谢

尊敬的老师:

您好!

这次课程设计让我收获了许多,老师的细心教导深深的感染了我。

由于我的知识功底薄弱,在老师的悉心教导和帮助下,我顺利地完成了本次微机原理及汇编语言程序设计课程设计,设计中的每一个环节无不凝聚着老师的心血。

老师在课程设计有很多的实践经验,在我们面对问题时对我们的悉心指导及其严谨的工作态度、锐意创新的精神,使我们受益匪浅,在此特别向老师表示深深的感谢和由衷的敬意。

感谢所有给予我们帮助的老师,你们辛勤耕作,传道授业,不仅使我们开阔了视野,拓宽了思路,增长了学识,而且为我们今后的工作和学习打下了牢固的基础,也增强我们对程序设计的兴趣。

同时也感谢学校给了我们这次难得的课程设计的机会,课设的过程让我们看到了自己理论知识上的不足,特别是在刚刚选择题目的时候自己根本不知道要用到什么知识,只能在不断的查找资料和实践中前进,但当完成程序后才发现已掌握的知识也在这次的课设中有了质的飞跃,知识能够应用才是真正掌握了,也希望学校多给我们一些这样的机会。

最后,我要由衷地感谢我的老师们,谢谢你们给我以启迪和指引。

在今后的学习和生活中,我们一定会继续发扬在这次课程设计中学到的精神。

参考文献

《微机原理实验与课程设计指导书》,陆红伟编,中国电力出版社,2006年

《8086微型计算机组成、原理及接口》,顾滨,机械工业出版社,2001

《微型计算机原理及应用》,吕淑萍等,哈尔滨工程大学出版社,2004年

《微型计算机技术及应用》,戴梅萼,清华大学出版社,2005

附录

源程序代码:

DATASEGMENT

NUM1DB10DUP(?

DB10DUP(?

DB10DUP(?

DB10DUP(?

DB10DUP(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

CALLINPUT

MOVCX,4

L9:

MOVSI,OFFSETNUM1

MOVBX,5

L2:

PUSHSI

L6:

MOVAL,[SI]

CMPAL,[SI+10]

JEL1

JBL3

L8:

POPSI

ADDSI,10

DECBX

JNEL2

LOOPL9

JMPSHUCHU

L1:

INCSI

JMPL6

L3:

MOVDX,10

L7:

MOVAL,[SI]

XCHG[SI+10],AL

MOV[SI],AL

INCSI

DECDX

JNZL7

JMPL8

SHUCHU:

MOVCX,5

MOVSI,OFFSETNUM1

L4:

MOVDX,SI

MOVAH,9

INT21H

MOVAH,02H

MOVDL,0AH

INT21H

MOVAH,02H

MOVDL,0DH

INT21H

ADDSI,10

LOOPL4

INPUTPROC

MOVSI,OFFSETNUM1

MOVCX,5

LP1:

PUSHSI

LP:

MOVAH,1

INT21H

MOV[SI],AL

INCSI

CMPAL,'$'

JNELP

POPSI

ADDSI,10

LOOPLP1

RET

INPUTENDP

CODEENDS

ENDSTART

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

当前位置:首页 > 临时分类 > 批量上传

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2