微型计算机原理实验报告总结,微机原理实验报告-两个多位十进制数相加的实验等.doc...

41528d3028836879cd698677c3999917.gif微机原理实验报告-两个多位十进制数相加的实验等.doc

微机原理实验报告班级学号姓名实验一两个多位十进制数相加的实验一、实验目的学习数据传送和算术运算指令的用法熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。二、实验内容将两个多位十进制数相加,要求被加数和加数均以ASCII码形式各自顺序存放在以DATA1、DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。三、程序流程图图31四、参考程序清单DATASEGMENTDATA1DB33H,39H,31H,37H,34H被加数DATA1ENDEQU1DATA2DB34H,35H,30H,38H,32H加数DATA2ENDEQU1SUMDB5DUPDATAENDSSTACKSEGMENTSTADB20DUPTOPEQULENGTHSTASTACKENDSCODESEGMENTASSUMECSCODE,DSDATA,SSSTACK,ESDATASTARTMOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXMOVAX,TOPMOVSP,AXMOVSI,OFFSETDATA1ENDMOVDI,OFFSETDATA2ENDCALLADDAMOVAX,4C00HINT21HADDAPROCNEARMOVDX,SIMOVBP,DIMOVBX,05HAD1SUBBYTEPTRSI,30HSUBBYTEPTRDI,30HDECSIDECDIDECBXJNZAD1MOVSI,DXMOVDI,BPMOVCX,05HCLCAD2MOVAL,SIMOVBL,DIADCAL,BLAAAMOVSI,ALDECSIDECDILOOPAD2MOVSI,DXMOVDI,BPMOVBX,05HAD3ADDBYTEPTRSI,30HADDBYTEPTRDI,30HDECSIDECDIDECBXJNZAD3RETADDAENDPCODEENDSENDSTART五、实验结果分析我们计算的结果是84256他们结果是一样的。六、实验心得通过这次课程使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。实验二排序实验一、实验目的掌握用汇编语言编写排序程序的思路和方法。巩固在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。二、实验内容将指定内存出开始的数据(最多为4位数)按从大到小的顺序排列。第一个数字表示数据的个数(不是要比较的数值)。三、程序流程图图32四、程序清单DATASEGMENTADDRDW8,234,35,67,876,54,39,765,237DATAENDSSTACKSEGMENTSTADW32DUPTOPDWSTACKENDSCODESEGMENTASSUMECSCODE,DSDATA,ESDATA,SSSTACKSTARTMOVAX,DATAMOVDS,AXMOVES,AXMOVAX,STACKMOVSS,AXMOVSP,TOPMOVCX,WORDPTRADDR0DECCXLOOP1MOVDI,CXMOVBX,2LOOP2MOVAX,WORDPTRADDRBXCMPAX,WORDPTRADDRBX2JGECCCXCHGAX,WORDPTRADDRBX2MOVWORDPTRADDRBX,AXCCCADDBX,2LOOPLOOP2MOVCX,DILOOPLOOP1EXITMOVAX,4C00HINT21HCODEENDSENDSTART五、实验结果分析六、实验心得通过这次的实验,对于微机实验我渐入佳境,开始逐步了解了他的结构和调试的方法。但是对于它中间的过程还是不太熟悉,还需要自己努力的学习,增加自己的知识含量,也希望自己越来越好。实验三自编程序上机调试一一、实验目的掌握用汇编语言编写程序的思路和方法。巩固在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。二、实验内容选课本或作业题中题目上机调试。用乘法指令实现32位二进制数与16位二进制数相乘。首先把被乘数第八位和高八位分别与乘数相乘,高八位乘得结果左移16位与第八位乘得结果相加即为结果。三、程序框图四、程序源代码DATASEGMENTDATAXDW1001H,2001HDATAYDW2001HDATAENDSCODESEGMENTASSUMECSCODE,DSDATASTARTMOVAX,DATAMOVDS,AXMOVBX,1000HMOVSI,OFFSETDATAXMOVDI,DATAYMOVAX,SIMULDIMOVBX,AXMOVBX2,DXMOVAX,SI2MULDI程序入口低16位相乘高16位相乘程序出口对应项相加ADDBX2,AXADDBX4,DXMOVAH,4CHINT21HCODEENDSENDSTART五、实验结果运行结果在DS1000中六、实验心得这是自己第一次写,开始写不出来,只能去翻阅课本或上网查阅资料,希望能从中获得一些帮助,最后看到了这个题目,于是自己就编了一个自己尝试,可惜程序缺点很多,最后去网上仔细的研究,才敲定了这个实验。实验四自编程序上机调试二一、实验目的掌握用汇编语言编写程序的思路和方法。巩固在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。二、实验内容选课本或作业题中题目上机调试。设有两个8个字节长的BCD码数据BCD1及BCD2。BCD1数以1000H为首地址在内存中顺序存放;BCD2数以2000H为首地址在内存中顺序存放。要求相加后结果顺序存放在以2000H为首地址的内存区中(设结果BCD数仍不超过8个字节长)。三、程序流程图四、程序源代码DATASSEGMENTORG1000HBCD1DB01H,02H,03H,04H,05H,06H,07H,88HBCD2DB11H,12H,13H,14H,15H,16H,17H,18HDATASENDSCODESSEGMENTASSUMECSCODES,DSDATASSTARTMOVAX,DATASMOVDS,AXMOVBX,0MOVCX,8CLCAGAINMOVAL,BX1000HADCBX2000H,ALDAAINCBXLOOPAGAINMOVAH,4CHINT21HCODESENDSENDSTART五、实验结果运行BCD1DB01H,02H,03H,04H,05H,06H,07H,88HBCD2DB11H,12H,13H,14H,15H,16H,17H,18H结果如上DS2000H为首地址的连续八个字节单元中六、实验心得考虑两个8个字节长的BCD码相加,首先根据地址要求将数据放在对应的地址单元中,然后做加法,BCD码相加要用到调整指令,结果才为正确的BCD数。实验中要有全局观念,这样才能更好地做好这件事。实验五8255并行I/O口实验一、实验要求利用8255可编程并行口芯片,实现输入/输出实验,实验中用8255PA口作输入,PB口作输出。二、实验目的1、了解8255芯片结构及编程方法。2、了解8255输入/输出实验方法。三、预备

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值