微机原理与接口技术实验总结.docx

上传人:b****7 文档编号:16258346 上传时间:2023-07-12 格式:DOCX 页数:10 大小:22.21KB
下载 相关 举报
微机原理与接口技术实验总结.docx_第1页
第1页 / 共10页
微机原理与接口技术实验总结.docx_第2页
第2页 / 共10页
微机原理与接口技术实验总结.docx_第3页
第3页 / 共10页
微机原理与接口技术实验总结.docx_第4页
第4页 / 共10页
微机原理与接口技术实验总结.docx_第5页
第5页 / 共10页
微机原理与接口技术实验总结.docx_第6页
第6页 / 共10页
微机原理与接口技术实验总结.docx_第7页
第7页 / 共10页
微机原理与接口技术实验总结.docx_第8页
第8页 / 共10页
微机原理与接口技术实验总结.docx_第9页
第9页 / 共10页
微机原理与接口技术实验总结.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

微机原理与接口技术实验总结.docx

《微机原理与接口技术实验总结.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术实验总结.docx(10页珍藏版)》请在冰点文库上搜索。

微机原理与接口技术实验总结.docx

微机原理与接口技术实验总结

微机原理与接口技术实验总结

篇一:

微机原理与接口技术实验总结

微机原理与接口技术实验总结

11107108徐寒黎

一、实验内容以及设计思路

1、①试编写一程序,比较两个字符串STRinG1、STRinG2所含字符是否相同,若相同输出“maTcH”,若不相同输出“nomaTcH”。

设计思路:

定义一个数据段,在数据段中定义两个字符串作为STRinG1、STRinG2以及几个用于输入提示的和输出所需内容的字符串,定义一个堆栈段用于存放,定义代码段。

关键步骤以及少量语句:

第一步将STRinG1和STRinG2都实现用键盘输入,方法是

moVdX,oFFSETSTRinG2

moVaH,0aH

inT21H

并且显示在显示器上,显示方法将0aH改成09H,语句与上面类似。

然后进行比较第一个单元,

moVaL,[STRinG1+1]

cmPaL,[STRinG2+1]

JnznomaTcH

若字符串长度不等,则直接跳转,输出输出“nomaTcH”;

若长度相等再逐个比较

LEaSi,[STRinG1+2]

LEadi,[STRinG2+2]

moVcL,[STRinG1+1]

moVcH,0

cLd

REPEcmPSB

JcXzmaTcH,意思是全部相同就跳转maTcH,输出“maTcH”;不然进入下面的nomaTcH。

退出。

②试编写求级数1_+2_+3_…..前几项和刚大于10000的程序。

设计思路:

原先编写的程序,设定和为10000,结果是14。

但要求高一点的话,可以自己设置,实现用键盘输入和的值。

一个难点是将输入的aScii码字符串,转换成与之相同的十进制数的数值。

关键的思路部分是:

从1开始求级数,将和的值存在aX里,要加下一项级数前,比如这时已经加到4,PUSH一下aX,然后将5乘三遍,将乘积moV到BX里,再PoPaX,然后将BX的值加到aX里,然后将aX与n比较,如果比n小就继续上述步骤,知道刚比n大就输出数字。

③试编写一程序,完成字符串中各字符出现频度的统计,统计结果在屏幕上输出。

设计思路:

因为这个程序需要统计所有的字符,所以首先要定义一个存储区,用来存放26个字符以及每个字符出现的个数。

用键盘控制输入字符串以后,将字符串的第一个字符与这二十六个字符逐个比较,若有相同,在存放相应次数的存储单元的值上加1。

然后比较第二个字符,依次类推,将字符串里的字符全部比较完。

将个数大于1的字符以及字符的个数都输出到屏幕上。

退出语句。

缺点和不足:

这样需要定义一个非常繁的存储区。

可以根据输入的字符,然后进行比较和统计。

④设计一个动画程序。

设计思路:

这个程序参考了网上的资料,没有什么新意,是小鸟的图形,可以用上下左右键进行移动,可以退出。

步骤:

首先设置堆栈段,数据段,代码段,设置显示方式等一些属性,设置背景色,设置小鸟的初始位置以及写出小鸟图形的像素的点。

功能性的语句是,用键盘接受一个输入,将其与1bh比较,用Jz语句跳转到退出。

若不是便与48h比较,看是否为向上,是则跳转到相应语句,不是则继续与50h比较;,看是否向下,是则跳转到关于向下移动的相关语句,否则再与4bh比较,看是否向左,依次类推,根据键盘输入的上下左右跳转到不同的语句。

再将小鸟的位置进行与上下左右键的输入相应的移动。

最后编写好退出语句。

2、硬件接口主要是了解8255与8253的功能,以及控制字。

①i/o地址译码

只要对硬件概念清晰,很简单的。

基本上没有什么创造性。

收获:

熟悉实验箱结构,了解每部分元件和标注的意义。

掌握i/o地址译码电路的工作原理。

②可编程定时器8253

1,对照实验电路图,将计数器0设置为方式0,即数初值设为n(n2,将计数器0、计数器1分别设置为方式3,计数初值设为1000用逻辑笔观察out1输出电平的变化。

收获:

掌握8253的基本工作原理和编程方法

③并行接口8255

1,试验电路如图所示,8255c口接逻辑电平开关K0~K7,a口接LEd显示电路L0~L7。

3,数码管静态显示:

按下图接好电路,将8255a口Pa0~Pa6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接5V(选中),S0和dp接地(关闭)。

编程从键盘输入一位十进制数(0-9),在七段数码管上显示。

4,数码管动态显示:

按下图接好电路,七段数码管的连接不变,位码驱动输入端S1、S0接8255c口的Pc1和Pc0。

编程在两个数码管上显示“56”。

动态显示时,先送“5”的段码送a口,再送02h到c口为位码;经一定延时后,送“6”的段码送a口,再送01h到c口为位码。

循环完成,可以显示数码。

5,数码管动态显示(选做):

同图接好电路,编程在两个数码管上显示循环显示“00-99”。

只要搞清楚各个口的地址,以及选择适当的控制字,其实很简单的。

收获:

掌握8255的基本工作原理和编程方法,对方式0的认识加深了。

二、试验中遇到的问题

1在编写程序时,我深深体会到,画程序框图的重要性,每一步跳转的条件一定要搞清楚,Y和n不能搞反了,否则就错了。

2实验2,里面涉及的寄存器很多,很容易就会用乱了,还是很需要注意的。

3比如那个小鸟动画的题目,当时在控制左右移动的时候,选择的起始位置的语句没写对位置,每次按一个移位的键以后,都从最初的初始位置向某个方向移动。

4硬件方面的,一开始没搞懂地址什么意思,所以连线时很懵懂,后来清楚了,发现就没什么了。

三、心得感受

微机原理与接口技术的课程实验历时大半个学期,通过自己编写、运行程序,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

以前对于编程工具的使用还处于一知半解的状态上,但是经过一段上机的实践,对于怎么去排错、查错,怎么去看每一步的运行结果,怎么去了解每个寄存器的内容以确保程序的正确性上都有了很大程度的提高。

前四个简单程序设计,加深了我们对初学的汇编语言指令的熟悉和理解,汇编语言直接描述机器指令,比机器指令容易记忆和理解。

通过学习和使用汇编语言,向上为理解各种软件系统的原理,打下技术理论基础;向下为掌握硬件系统的原理,打下实践应用基础。

不仅巩固了书本所学的知识,还具有一定的灵活性,发挥了我们的创造才能。

后面几个实验是并行输入输出接口8255和计数器8253的功能的操作,加深了我们对硬件的熟悉,锻炼了动手能力,发挥创造才能。

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

在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。

这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在自己的思考以及和同学的讨论中,终于迎刃而解。

篇二:

西南民族大学《微机原理与接口技术》实验心得9篇

西南民族大学《微机原理与接口技术》实验心得9篇

2.1清零程序:

这个实验是本门课程的第一个软件实验,不需要连接电路,直接运行编写好的程序即可,程序代码也比较简单。

实验内容是将Ram区内4000H~40FFH单元的内容清零,同时熟悉8088汇编语言程序设计和调试方法。

通过本次实验,我加深了对汇编程序指令的熟悉与理解,汇编语言直接描述机器指令,比机器指令更容易记忆与理解。

熟悉了本实验的基本原理,理解了8088汇编语言程序的工作过程。

由于这是第一个实验,内容也比较简单,所以实验过程比较顺利,基本没出现错误。

2.2拆字程序:

本次实验也是软件实验,程序代码比清零程序稍微复杂一些,本程序的主要功能是把4000H单元的内容拆开,高位送4001H,低位送4002H,同时将4001H、4002H两单元的高位清零。

通过本次实验,我学会了用断点方式调试汇编程序,对于汇编程序怎么去排错、查错,怎么去看每一步的运行结果,怎么去了解每个寄存器内容的变化以确保程序的正确性有了一定的认识。

当看到实验结果与计算的结果一致时,还是有一点小小的成就感的。

但最开始编写的程序还是存在低级的语法错误,导致程序编译出错,这是在以后编写汇编程序的时候必须要想办法杜绝的。

2.3拼字游戏:

本次实验是最后一个软件实验,主要任务是编写汇编程序,实现将4000H、4001H两个单元的低位数据分别送入4002H高低四位。

经过前两次实验的练习,我在书写本次实验的汇编程序代码时没有出现语法错误,理清算法后就一次编写成功了。

实验结果也与计算的完全一致,较快地完成了实验任务。

综合做过的三次软件实验,我对汇编语言有了更进一步的认识,加强了我用汇编语言编程的能力。

更加熟悉了汇编语言的一些基本的指令,并能够熟练地应用。

同时,要学会通过观察寄存器的变化推断程序的流程,这样会给程序调试和排错带来很大的方便。

3.1基本i/o口扩展实验:

本次实验是本门课程的第一个接口实验,主要目标是利用74LS244和74LS273扩展i/o口。

将74LS244作为输入口,读取开关状态,并将此状态通过74LS273驱动发光二极管显示出来。

通过本次实验,我了解了用TTL芯片扩展简单i/o口的方法,掌握了i/o程序编制的方法。

因为试验程序是提供的,所以不用自己编写程序,节约了一定的实验时间。

但读懂程序还是花了些功夫。

由于需要将各部件进行连线,所以连线之前对所用连接线进行“测线”工作是十分重和必要的。

如果不进行测线的话,一旦实验结果不正确,就会给排错工作带来很大的麻烦,甚至有可能需要全部重新连线。

这是老师强调的一点,也是在以后的试验中要格外注意的。

3.28259a中断应用实验:

这次实验是一次综合性的实验,8255和8259a两个接口芯片都要用到,程序也比较长,理解较为麻烦。

虽然遇到了不少困难,但主要还是连线不注意造成的。

通过这次实验,我又熟悉了汇编语言的应用,加深了对8255、8259a两种芯片功能的理解,明白了中断控制是微机系统的主要管理方式,也是处理器与外设之间通信的最有效方式。

通过本次实验,我掌握了8259a中断控制器的工作原理,基本功能及初始化编程方法,掌握了8259a的7个命令(4个初始化命令和3个操作命令)的结构和用法。

3.3可编程定时器/计数器8254/8253实验:

本次实验是将32Hz的晶振频率作为8254的时钟输入,利用8254产生1Hz的方波,方波需用示波器观察。

8254是一种可编程的定时器/计数器芯片。

通过本次实验,我了解了计数器的硬件连接方法及时序关系,掌握了8254的各种模式的编程及其原理,学会了用示波器观察各信号之间的时序关系。

本次实验的硬件连接问题不大,但由于很久没用示波器的缘故,我对示波器的使用显得生疏。

尤其是调试方波的时候花了很多时间,最终效果却依然不理想,也因此影响了实验结果的观测。

我也明白了配套设备的熟练使用程度对实验的成功与否有很重要的作用。

3.4可编程并行接口8255实验:

本次实验的主要内容是利用8255的a口循环点亮发光二极管和利用8255的a口模拟交通信号灯。

由于是两个电路,所以要注意做完一个实验更换电路连线时一定要关掉试验箱的电源。

通过本次实验,我了解了可编程并行接口芯片8255的内部结构、工作方式、初始化编程及应用。

掌握了可编程并行接口8255a和微机的硬件连接方法,并且加深理解了可编程并行接口8255a的工作方式及其编程方法。

通过流水灯实验和交通灯实验,我感受到了本次实验内容的实际应用价值。

同时也对程序及其所用的芯片加深了理解,为以后的各种设计工作做好了充实的知识准备。

3.7a/d转换实验:

本次实验的主要任务是利用adc0809芯片将模拟信号转换成数字信号并在数码管上显示。

通过此次实验,我们学习了模/数信号转换的基本原理,了解了adc0809转换芯片的硬件电路和软件编程,并且基本掌握了adc0809芯片的使用方法。

由于是第一次接触adc0809芯片,我对它的功能和构造还不是很熟悉,对程序的理解也有一定困难,所以实验过程中难免遇到一些问题,最后在老师指的点和同学的讨论下,终于完成实验任务,达到实验的预期目的。

通过此次实验,我还知道:

adc0809包括一个8位的逐次逼近型的adc部分,并提供一个8通道的模拟多路开关和联合寻址逻辑。

用它可直接输入8个单端的模拟信号,分时进行a/d转换,再多点巡回监测、过程控制。

3.8d/a转换实验:

这次实验需要用到示波器,实验刚开始时,对示波器的一些按键的功能不太熟悉,在调接示波器的初始化过程中花了很多时间,最后在老师的提示下完成了示波器的初始化,接着按实验操作步骤一步步完成了实验,达到了实验目的,实现了预期的结果。

通过此次实验,我们初步掌握了dac0832芯片的一些性能和使用方法以及对应的硬(:

微机原理与接口技术实验总结)件电路,了解d/a转换的基本原理以及示波器的应用,使理论知识得到了加深和巩固。

本次实验是本门课程的最后一次实验,通过本学期的九次实验,我们巩固了汇编语言编程的相关知识,同时提高了对理论知识的认知应用能力,使我们认识到课程的重要性,感受到理论与实践之间的差距,为我们更好的巩固已学习的知识及培养我们的动手能力创造了良好的机会。

篇三:

微机原理与接口技术实验报告

新疆农业大学机械交通学院

实习(实验)报告纸

班级:

机制072学号:

073731234姓名:

唐伟课程名称:

微机原理及接口技术实习(实验)名称:

dEBUG软件的使用实验时间:

6.22指导教师签字:

成绩:

—、实验目的

1.学习dEBUG软件的基本使用方法。

2.掌握8088/8086的寻址方式。

3.掌握数据传送、算术运算逻辑运算等类指令的基本操作。

二、实验内容与步骤

实验内容:

修改并调试以下程序,使之完成30000H开始的内存单元中存入31个先自然递增然后

有自然递减的数据(00H~0F~00H)的功能。

程序从cS:

0100H开始存放。

调试完成后程序命名为PcS.EXE并存盘。

实验步骤:

(1)用a命令输入程序;

(2)用反汇编U命令显示程序及目标码;

存盘程序命令为PcS1.EXE;

三、思考题

1.EXE文件程序的第一条可执行指令的iP等于多少?

答:

EXE文件程序的第一条可执行指令的iP等于0010。

2.在dEBUG环境下显示的程序和数字是什么形式?

标号又是什么形式?

答:

dEBUG把所有数据都作为字节序列处理。

因此它可以读任何类型的文件。

dEBUG可以识别两种数据:

十六进制数据和aScⅡ码字符。

它的显示格式是各个

字节的十六进制值以及值在32与126之间的字节的相应aScⅡ码字符。

dEBUG总是用四位十六进制数表示地址。

用两位数表示十六进制数据。

不支持标号。

3.试述本次实验中你学会的dEBUG命令?

答:

本次试验我学会了汇编命令(a命令)、.反汇编命令(U命令)、显示当前环境和寄

存器内容(R命令、以十六进制和aScii码形式显示内存单元内容(d命令)

新疆农业大学机械交通学院

实习(实验)报告纸

班级:

机制072学号:

073731234姓名:

唐伟课程名称:

微机原理及接口技术实习(实验)名称:

汇编语言程序的建立和运行实验时间:

6.22指导教师签字:

成绩:

—、实验目的

1.熟悉伪指令和汇编运算符,掌握汇编语言程序的编写方法。

2.学习汇编语言源程序的编辑、汇编、连接、调试及运行的全过程。

二、思考题

1.用dEBUG软件调试程序(.EXE文件形式),不执行任何指令,可以用d命令(-ddS:

0)查看数据段的原始数据吗?

为什么?

答:

首先用T命令顺序执行用户程序的前几条直到寄存器dS/ES已预置为用户的数据

段。

在用T命令执行程序时,每执行一条指令,显示指令执行后寄存器的变化情况,以便用户查看指令执行结果。

观察用户程序数据段出事内容:

在地3步执行后dS/ES已指向用户程序的数据段和附加段,这时用d命令可查看用户程序的原始数据。

2.汇编语言源程序通过了汇编和链接是否就正确无误了?

为什么?

答:

如果汇编和链接都正确,产生的可执行文件就可在doS下运行,只要直接打入文

件名即可.调试汇编语言源程序在汇编及连接中能够检查出语法错误,有些逻辑错误,结构错误,只有在调试运行中,才能发现.调试工具dEBUG是为汇编语言。

3.汇编语言源程序经汇编和链接后产生的是哪一种可执行文件?

这种文件中iP的初始值一般是多少?

答:

汇编(masm文件名.asm)后生成目标文件.obj。

再经过链接程序(link.exe)可以生成

列表文件.list,可执行文件.exe。

三、实验内容及步骤

1.程序编辑。

daTaSEGmEnT

cREQU0dH

LFEQU0aH

daT1dB'HowaREYoU?

',cR,LF,'$'

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

当前位置:首页 > 人文社科 > 法律资料

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

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