微机原理应用实验任务书.docVIP

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理应用实验任务书.doc

微机原理应用实验 一 循环程序设计实验 实验目的 加深对循环结构的理解。 掌握循环结构的程序设计方法。 熟练掌握调试循环程序的方法。 实验设备 装有DOS系统和MASM5.0的微机一台或TDN86/88微机原理实验教学系统一台。 实验内容及步骤 编制程序 使S=1+2×3+3×4+4×+…+N(N+1),直到N(N+1)项大于200为止。 实验流程如图1.1所示。 2. 求某个数据区内负数的个数 设数据区的第一单元存放区内单元数据的个数,从第二单元开始存放数据,在区内最后一个单元存放结果。为统计数据区内负数的个数,需要逐个判断区内的每一个数据,然后将所有数据中凡是符号位为1的个数累加起来,即得区内所包含负数的个数。实验流程如图1.2所示。 实验步骤: 编制实验程序。 输入程序并检查无误,经汇编、连接后装入系统。 E3000↓输入数据如下: 3000=06(数据个数) 3001=12、88、82、90、22、33。 G=0000:2000↓,运行实验程序。 D=3007↓,显示结果03。 思考题 修改实验内容2,使其能分别求出数据区中正数、零和负数的个数。 二 子程序设计实验 实验目的 学习子程序的定义和调用方法。 子程序、子程序的嵌套和递归子程序的结构。 掌握子程序的程序设计、编制及调用。 实验设备 装有DOS系统和MASM5.0的微机一台或TDN86/88微机原理实验教学系统一台。 实验内容及步骤 求无符号字节序列中的最大值和最小值 设有一无符号字节序列,其存储首地址为3000H,字节数08H。利用子程序的方法编程求出该序列中的最大值和最小值。主程序流程图如图2.1所示,子程序流程图如图2.2所示。 图2.1最大值和最小值主程序流程图 图2.2 最大值和最小值子程序流程图 实验步骤: 编写出相应的程序。 输入实验程序并检查无误,经汇编、连接后装入系统。 E3000↓,输入8个字节的数据:D9 07 8B C5 EB 04 9D F9。 G=0000:2000↓,运行实验程序。 RAX↓,显示结果,AX=F904,AH中为最大值,AL中为最小值。 程序说明:该程序使用BH和BL暂存线现行的最大值和最小值,开始时初始化成首字节的内容,然后进入循环操作,从字节序列中逐个取出一个字节的内容与BH和BL比较,若取出的字节内容比BH的内容大或比BL的内容小,则修改之。当循环操作结束时,将BH送AH,将BL送AL。作为返回值,并回复BX原先内容。 求N! 利用子程序的嵌套和子程序的递归调用,实现N!的运算。根据阶乘运算,有下列公式: N!=N(N-1)!=N(N-1)(N-2)!=…… 0!=1 由此我们可以想到,欲求N的阶乘,并且用以递归子程序来实现,每次递归调用时应将调用参数减1,即求N-1的阶乘,并且当调用参数为0时应停止递归调用,且有0!=1的中间结果。最后将每次调用的参数相乘得到最后结果;因每次递归调用时参数都送人栈中,当N为0二程序开始返回时,应按嵌套的方式逐层取出响应的调用参数。 N放在3000H一3001H单元中,N!的结果放在3010H起的单元中,N在OH—FH间取数,且3000H中放低位。 实验步骤: (1)依据设计思想给出程序流程图,并编出相关程序。 (2)输入程序并检查无误,经汇编、连接后装入系统。 (3)在0一F之间随意取一数放入3000H一3001H单元中,运行程序,验证结果。 思考题 若求有符号字节型序列中的最大值和最小值,如何修改实验内容l的程序? 于程序执行完毕后要返回程序调用,它返回调用程序的什么地方,是靠什么指令、什么方法返回的? 若N=3,请画出实验内容2的程序运行时的堆栈变化情况,并加以解释。 三 8259应用实验 一、实验目的 1.认识8086/8088系统的中断特性。 2.掌握8259中断控制器的工作原理。 3.掌握8259可编程中断控制器的应用编程。 4.学习掌握8259级连方式的使用方法。 5.学习在接口实验单元上连接实验电路的方法。 二、实验设备 TDN86/88微机原理教学实验系统一台,排线、导线若干。 三、实验内容及步骤 (一)系统中的8259芯片 1. 8259A可编程中断控制器介绍 中断控制器8259A是Intel公司专为控制优先级中断而设计开发的芯片。它将中断源优先级排队、辨别中断源并将提供中断矢量的电路集成在一个芯片中,因此在不附加任何电路的情况下,对8259A进行编程,就可以管理8级中断,并且优先模式和中断请求方式,即中断结构可以由用户编程来设定。同时,通过多片8259A的级连,能构成多达64级的矢量中断系统。 8259A的内部结构和引脚如图3.1所示。8259A

文档评论(0)

我的文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档