计算机组成原理实验》报告.doc

计算机组成原理实验》报告.doc

ID:59321070

大小:40.50 KB

页数:6页

时间:2020-09-05

计算机组成原理实验》报告.doc_第1页
计算机组成原理实验》报告.doc_第2页
计算机组成原理实验》报告.doc_第3页
计算机组成原理实验》报告.doc_第4页
计算机组成原理实验》报告.doc_第5页
资源描述:

《计算机组成原理实验》报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、上海大学计算机学院《计算机组成原理实验》报告九姓名刘学号教师xx时间周三7-9机位23报告成绩实验名称:程序转移机制(综合实验)一、实验目的1.学习实现程序转移的硬件机制。2.掌握堆栈寄存器的使用。二、实验原理1.程序转移:任何复杂的程序流程,在硬件实现机制上只有两种情况:顺序执行和转移。硬件实现这两种情况的技术很简单:PC寄存器的自动加1功能实现程序顺序执行。PC寄存器的打入初值功能实现程序转移。转移操作决定于“给PC赋值”,而转移类型决定于“所赋的值同当前指令的关系”。2.实验箱系统的程序转移硬件机制:若LDCP为0是附带条件的,就形成“条件转移”。实验箱依靠“PC打入电路

2、”实现“有进位”时转移和“计算结果为零”时转移,以及无条件转移。3.子程序调用和保护断点:子程序的调用和返回是两次转移,返回时转移的目标一定是调用时转移的出发点。在调用转移时必须把出发地址(断点)保存起来。1.不被一般用户所知或改变(不能被保存在数据存储区或程序存储区)。2.返回转移时能方便地找到它(返回指令的目标地址一定从这个特殊的“保存区”得到,指令本身不需要再带目标地址)。4.ST寄存器结构和子程序调用与返回控制信号:调用转移时,PC的当前值(断点)经下面的245送上DBUS,进入ST保存;然后给PC打入子程序入口地址(调用指令携带的目标地址)完成转子程序。返回转移时,返

3、回指令开启ST的输出,并给出PC打入信号(无条件转移),于是ST保存的断点经由DBUS打入PC,实现子程序返回。三、实验内容1、用手动方式实现子程序调用转移过程。(假设转子时PC值为11H,子程序的入口地址为50H)2.用手动方式实现子程序返回转移过程。3.编程实现OUT寄存器交替显示11和55,交替频率为可以清晰辨识,且不小于每秒一次。(实验箱的工作频率为:114.8Hz。)四、实验步骤K7连STEN,K6连PCOE,K5连ELP,K10K9K8连X2X1X0进入手动模式(TV/ME键按三次)①将PC(11H)存入ST(栈寄存器)stenpcoeelpX2X1X0100000

4、选中IN,数据通过IN送入PCK23~K16:STEP②将PC压入堆栈ST中stenpcoeelpX2X1X0011011STEP③PC改为50HstenpcoeelpX2X1X0100000STEP①将PC加到53HstenpcoeelpX2X1X0101111STEP按三次②程序返回,将ST(11H)的值返回到PCstenpcoeelpX2X1X0100010STEP3、编程实现OUT寄存器交替显示11和55,交替频率为可以清晰辨识,且不小于每秒一次。(实验箱的工作频率为:114.8Hz。)①启动桌面上COMPUTE.EXE软件。②连接通信口:COM1/COM2③点击源程序

5、编写程序:START:MOVA,#11HOUTCALL50HMOVA,#55HOUTCALL50HJMPSTARTORG50HMOVA,#10HL1:SUBA,#01H//每一次减一,减到0为止JZL2//判0条件转移JMPL1L2:RETEND④保存,文件名后需加.asm后缀。⑤编译下载。①全速运行五、实验现象①将PC(11H)存入ST(栈寄存器)显示ST:00PC:11②将PC压入堆栈ST中显示ST:11PC:11③将PC改为50H显示ST:11PC:50④将PC加到53H显示ST:11HPC:53H①程序返回,将ST(11H)的值返回到PC显示ST:11HPC:11H六、

6、实验结论实验结论与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#

7、**H,后面也是地址。总的来说,这次试验还是比较简单的,只要知道原理,再慢慢想,置1或置0,就会做对了。九、思考题若要求11和55各显示50次后停机,应该如何修改程序?答:答:修改的程序如下:ORG00HMOVA,#50L1:MOVR0,AMOVA,#11HOUTCALL20HL2:MOVA,#55HOUTCALL20HMOVA,R0SUBA,#01JZL5JMPL1ORG20HMOVA,#1000HL3:SUBA,#01HJZL4JMPL3L4:RETL5:END

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。