




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微机实验心得领悟【篇一:微机原理实验报告】一、实验目的掌握qtspim的调试技术认识mips汇编语言与机器语言之间的对应关系掌握mips汇编程序设计认识c语语言句与汇编指令之间的关系熟悉常有的mips汇编指令掌握程序的内存映像二、实验任务用汇编程序实现以下伪代码:要求采用移位指令实现乘除法运算。intmain()intk,y;intz50;y=56;for(k=0;k50;k+)zk=y-16*(k/4+210);三、实验要求1.完成汇编语言程序设计、调试、测试全过程2.指出用户程序的内存映像,包括代码段和数据段3.完成软件实验报告四、实验过程程序源代码:.data#定义用户数据段z:.spa
2、ce200.textmain:la$s0,z#$s0=addrzli$t0,0#$s1=k=0li$t1,56#$s2=y=56slti$t2,$t0,50#判断k可否小于beq$t2,$0,done#当k大于等于srl$t3,$t0,2#k/4addi$t3,$t3,210#k/4+2105050时跳转sll$t3,$t3,4#16*(k/4+210)sub$t3,$t1,$t3#y-16*(k/4+210)sw$t3,0($s0)#写进zkaddi$s0,$s0,4#地址移一位addi$t0,$t0,1#k加1jloop#循环done:li$v010syscall五、实验总结经过此次实验,
3、加深了我对理论学习的代码书写规范的理解,练习了qtspim软件的使用,对今后的学习有很大的帮助。此次实验的内容相比较较简单,原理简单理解,编译的过程中遇到了一点困难,但是在同学的帮助下顺利解决了。【篇二:微机原理与接口技术实验总结】微机原理与接口技术实验总结11107108徐寒黎一、实验内容以及设计思路1、试编写一程序,比较两个字符串string1、string2所含字符可否相同,若相同输出“match”,若不相同输出“nomatch”。设计思路:定义一个数据段,在数据段中定义两个字符串作为string1、string2以及几个用于输入提示的和输出所需内容的字符串,定义一个货仓段用于存放,定义
4、代码段。要点步骤以及少量语句:第一步将string1和string2都实现用键盘输入,方法是movdx,offsetstring2movah,0ah而且显示在显示器上,显示方法将0ah改成09h,语句与上面近似。尔后进行比较第一个单元,moval,string1+1cmpal,string2+1jnznomatch若字符串长度不等,则直接跳转,输出输出“nomatch”;若长度相等再逐个比较leasi,string1+2leadi,string2+2movcl,string1+1movch,0cldrepecmpsbjcxzmatch,意思是全部相同就跳转match,输出“match”;否则进
5、入下面的nomatch。退出。试编写求级数13+23+33.前几项和刚大于10000的程序。设计思路:本来编写的程序,设定和为10000,结果是14。但要求高一点的话,能够自己设置,实现用键盘输入和的值。一个难点是将输入的ascii码字符串,变换成与之相同的十进制数的数值。要点的思路部分是:从1开始求级数,将和的值存在ax里,要加下一项级数前,比方这时已经加到4,push一下ax,尔后将5乘三遍,将乘积mov到bx里,再popax,尔后将bx的值加到ax里,尔后将ax与n比较,若是比n小就连续上述步骤,知道刚比n大就输出数字。试编写一程序,完成字符串中各字符出现频度的统计,统计结果在屏幕上输出
6、。设计思路:因为这个程序需要统计全部的字符,所以第一要定义一个储藏区,用来存放26个字符以及每个字符出现的个数。用键盘控制输入字符串今后,将字符串的第一个字符与这二十六个字符逐个比较,若有相同,在存放相应次数的储藏单元的值上加1。尔后比较第二个字符,依次类推,将字符串里的字符全部比较完。将个数大于1的字符以及字符的个数都输出到屏幕上。退出语句。缺点和不足:这样需要定义一个特别繁的储藏区。能够依照输入的字符,然后进行比较和统计。设计一个动画程序。设计思路:这个程序参照了网上的资料,没有什么新意,是小鸟的图形,能够用上下左右键进行搬动,能够退出。步骤:第一设置货仓段,数据段,代码段,设置显示方式等
7、一些属性,设置背景色,设置小鸟的初始地址以及写出小鸟图形的像素的点。功能性的语句是,用键盘接受一个输入,将其与1bh比较,用jz语句跳转到退出。若不是便与48h比较,看可否为向上,是则跳转到相应语句,不是则连续与50h比较;,看可否向下,是则跳转到关于向下搬动的相关语句,否则再与4bh比较,看可否向左,依次类推,依照键盘输入的上下左右跳转到不相同的语句。再将小鸟的地址进行与上下左右键的输入相应的搬动。最后编写好退出语句。2、硬件接口主若是认识8255与8253的功能,以及控制字。i/o地址译码只要对硬件看法清楚,很简单的。基本上没有什么创立性。收获:熟悉实验箱结构,认识每部分元件和注明的意义。
8、掌握i/o地址译码电路的工作原理。可编程准时器82531,比较实验电路图,将计数器0设置为方式0,即数初值设为n(n0fh),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并用逻辑笔观察out0点平变化。2,将计数器0、计数器1分别设置为方式3,计数初值设为1000用逻辑笔观察out1输出电平的变化。收获:掌握8253的基本工作原理和编程方法并行接口82551,试验电路以下列图,8255c口接逻辑电平开关k0k7,a口接led显示电路l0l7。3,数码管静态显示:按以下列图接好电路,将8255a口pa0pa6分别与七段数码管的段码驱动输入端ag相连,位码驱动输入端s1接5v(选中),s0和d
9、p接地(关闭)。编程从键盘输入一位十进制数(0-9),在七段数码管上显示。4,数码管动向显示:按以下列图接好电路,七段数码管的连接不变,位码驱动输入端s1、s0接8255c口的pc1和pc0。编程在两个数码管上显示“56”。动向显示时,先送“5”的段码送a口,再送02h到c口为位码;经必然延时后,送“6”的段码送a口,再送01h到c口为位码。循环完成,能够显示数码。5,数码管动向显示(选做):同图接好电路,编程在两个数码管上显示循环显示“00-99”。只要搞清楚各个口的地址,以及选择合适的控制字,其实很简单的。收获:掌握8255的基本工作原理和编程方法,对方式0的认识加深了。二、试验中遇到的问
10、题在编写程序时,我深深领悟到,画程序框图的重要性,每一步跳转的条件必然要搞清楚,y和n不能够搞反了,否则就错了。实验2,里面涉及的存放器很多,很简单就会用乱了,还是很需要注意的。3比方那个小鸟动画的题目,当时在控制左右搬动的时候,选择的初步地址的语句没写对地址,每次按一个移位的键今后,都从最初的初始地址向某个方向搬动。硬件方面的,一开始没搞懂地址什么意思,所以连线时很懵懂,今后清楚了,发现就没什么了。三、心得感觉微机原理与接口技术的课程实验历时大多数个学期,经过自己编写、运行程序,不但能够牢固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。以前关于编程工具的使用还处于一孔之见的状
11、态上,但是经过一段上机的实践,关于怎么去排错、查错,怎么去看每一步的运行结果,怎么去认识每个存放器的内容以保证程序的正确性上都有了很大程度的提高。前四个简单程序设计,加深了我们对初学的汇编语言指令的熟悉和理解,汇编语言直接描述机器指令,比机器指令简单记忆和理解。经过学习和使用汇编语言,向上为理解各样软件系统的原理,打下技术理论基础;向下为掌握硬件系统的原理,打下实践应用基础。不但牢固了书本所学的知识,还拥有必然的灵便性,发挥了我们的创立才能。后边几个实验是并行输入输出接口8255和计数器8253的功能的操作,加深了我们对硬件的熟悉,锻炼了着手能力,发挥创立才能。经过此次课程设计使我懂得了理论与
12、实质相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真切提高自己的实质着手能力和独立思虑的能力。在设计的过程中遇到问题,能够说得是困难重重,这毕竟第一次做的,难免会遇到过各样各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。此次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在自己的思虑以及和同学的谈论中,终于瓜熟蒂落。【篇三:汇编语言实验心得】一实验内容1.debug的启动及其基本命令的使用内存操作数与寻址方式利用debug程序中的“e”命令,将两个多字节数“12345678h
13、”和“fedcba98h”分别送入初步地址为ds:0200h和ds:0204h两个单元中。分别用直接寻址方式和存放器间接寻址方式编写程序段,实现将ds:0200h单元和ds:0204h单元中的数据相加,并将运算结果存放在ds:0208h单元中。序次程序设计x、y、z、v均为字变量,在x、y、z、v字单元中存放是16位带符号数。试编写汇编语言程序完成以下功能:计算表达式值(v(x*y+z-720)/x;将上述表达式运算结果整数放在sum1单元,余数放在sum2单元。分支程序设计1)设x,y为字变量,假定不溢出,计算x=|x-y|。将num单元中的一位十六进制数(09,af),变换为对应的asci
14、i码值存入asc单元。已知字节变量x,编程求以下表达式即:当x0当x=0当x0循环程序设计定义10个字节型带符号数,求其和。在内存单元data中定义一个16位数,统计其16位中1的个数,存入内存的字单元count。定义10个字型无符号数,编写程序求其最小值。子程序设计设计一个子程序,计算1+2+?+n,其中n为给定的正整数,且n小于100。定义10个字型带符号数,编写子程序求其最大值和统计正数的个数。从键盘接收4位十进制数,将其变换为十六进制数并显示。.实验心得上学期学习计算机组成原理的时候就对汇编有所认识,但经过这学期的学习,使我更加深入认识了其知识系统和计算机组成及内部程序执行的原理。关于
15、各命令的熟练掌握后,自己亲自着手实验更是领悟到了各命令的用途及执行的方法。经过各个基本命令能够轻松更正计算机内部存放器的值和读写内存,磁盘,i/o端口的值,经过更正观察其对计算机的影响变化。关于汇编语言的寻址方式,更是多种多样,经过对各寻址方式的比较,能够感觉到各寻址方式的不足与好处,还有是对各寻址方式的注意事项,有的寻址方式需专用的存放器,有的存放器是禁止使用的,但是有的就开放的多,对存放器没有特别要求,但是在编程过程中使用较为合适的寻址方式是提高程序运行效率的保障,在对寄存器中的值做运算时要正确书写各值,在x86中只支持十六进制数,在运算结束后值得保存也是很重要的,不能够随意保存。写数据传达指令时,目的操作数和源操作数的种类必然要般配,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 保健医疗服务合同3篇
- 户口借用全攻略委托书篇3篇
- 委托开发协议合同范本3篇
- 合同中的停薪留职规定3篇
- 协议供货与定点采购3篇
- 官方授权委托样式3篇
- 四方合伙合作协议书3篇
- 住宅用途变更声明书3篇
- 线上线下服饰销售模式比较考核试卷
- 玻璃背景墙设计考核试卷
- 2025年车站值班员高级考试题库
- 广西2025年体育统考身体素质测试项目评分标准
- 品牌运营推广合同范本
- 档案补办申请书
- 体外诊断试剂培训课件
- 医院6S管理达标创建
- 《建筑装饰工程施工图设计》学习领域课程标准
- 2025年兴业银行股份有限公司招聘笔试参考题库含答案解析
- 2025年1月四川高考改革适应性演练测试物理试题(八省联考四川物理卷)(原卷版)
- DB33T 1214-2020 建筑装饰装修工程施工质量验收检查用表标准
- 2025年沈阳铁路局集团招聘笔试参考题库含答案解析
评论
0/150
提交评论