网站大量收购独家精品文档,联系QQ:2885784924

计组二试验报告九.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计组二试验报告九

计组二实验报告九 上海大学 计算机学院 《计算机组成原理实验》报告九 姓名 刘 学号 教师 顾惠昌 时间 周三7-9机位 23 报告成绩 实验名称:程序转移机制(综合实验) 一、实验目的 1. 学习实现程序转移的硬件机制。 2. 掌握堆栈寄存器的使用。 二、实验原理 1. 程序转移:任何复杂的程序流程,在硬件实现机制上只有两种情况:顺序执行和转移。 硬件实现这两种情况的技术很简单: PC寄存器的自动加1功能实现程序顺序执行。 PC寄存器的打入初值功能实现程序转移。 转移操作决定于“给PC赋值”,而转移类型决定于“所赋的值同当前指令的关系”。 2. 实验箱系统的程序转移硬件机制: 若LDCP为0是附带条件的,就形成“条件转移”。实验箱依靠“PC打入电路”实现“有进位”时转移和“计算结果为零”时转移,以及无条件转移。 3. 子程序调用和保护断点: 子程序的调用和返回是两次转移,返回时转移的目标一定是调用时转移的出发点。在调用转移时必须把出发地址(断点)保存起来。1.不被一般用户所知或改变(不能被保存在数据存储区或程序存储区)。2.返回转移时能方便地找到它(返回指令的目标地址一定从这个特殊的“保存区”得到,指令本身不需要再带目标地址)。 4. ST寄存器结构和子程序调用与返回控制信号 : 调用转移时,PC的当前值(断点)经下面的245送上DBUS,进入ST保存;然后给PC打入子程序入口地址(调用指令携带的目标地址)完成转子程序。返回转移时,返回指令开启ST的输出,并给出PC打入信号(无条件转移),于是ST保存的断点经由DBUS打入PC,实现子程序返回。 三、实验内容 1、 用手动方式实现子程序调用转移过程。 (假设转子时PC值为11H,子程序的入口地址为50H) 2. 用手动方式实现子程序返回转移过程。 3. 编程实现OUT寄存器交替显示11和55,交替频率为可以清晰辨识,且不小于每秒一次。 (实验箱的工作频率为:114.8Hz。) 四、实验步骤 K7 连 STEN ,K6连PCOE, K5连ELP,K10 K9 K8连X2 X1 X0 进入手动模式(TV/ME键按三次) ① 将PC(11H)存入ST(栈寄存器) 选中IN,数据通过IN送入PC K23~K16STEP ② 将 STEP ③ PC④ 将 STEP按三次 ⑤ 3、编程实现OUT寄存器交替显示11和55,交替频率为可以清晰辨识,且不小于每秒一次。 (实验箱的工作频率为:114.8Hz。) ①启动桌面上COMPUTE.EXE软件。 ② 连接通信口:COM1/COM2 ③ 点击源程序编写程序: START: MOV A,#11H OUT CALL 50H MOV A,#55H OUT CALL 50H JMP START ORG 50H MOV A,#10H L1: SUB A,#01H //每一次减一,减到0为止 JZ L2 //判0条件转移 JMP L1 L2: RET END ④ 保存,文件名后需加.asm后缀。 ⑤ 编译下载。 ⑥ 全速运行 五、实验现象 ① 将PC(11H)存入ST(栈寄存器) 显示 ST:00 PC:11 ② 将PC压入堆栈ST中 显示 ST:11 PC:11 ③ 将PC改为50H 显示ST:11 PC:50 ④ 将PC加到53H 显示ST:11H PC:53H ⑤ 程序返回,将ST(11H)的值返回到PC 显示ST:11H PC:11H 六、实验结论 实验结论与PC的+1与转移原理一致。 七、建议 八、体会 这个实验主要是对PC的作用及用法进行实验,通过对PCOE、ELP、STEN、IN、x2、x1、x0等的0、1来实现PC的+1和转移的。PCOE为0的时候实现PC+1,ELP、PCOE为0的时候实现PC的打入,理解了这些再借助于STEN堆栈寄存器来存放PC之前的值,最后把STEN存放的值打回PC中实现PC返回。最后关于COMPUTE.EXE软件的使用,一定要把程序加载到实验箱里才可以,我就是忘记了打开实验箱,最后才发现没开实验箱。还有就是微指令ORG后面跟的是地址,是存放微指令的地址,call调用程序,格式为:call #**H,后面也是地址

文档评论(0)

sunshaoying + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档