- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
评语: 课中检查完成的题号及题数: 课后完成的题号与题数: 成绩: 自评成绩: 85
实验报告
实验名称: CPU 与简单模型机设计实验 日期: 2015.11.17
班级:学号: 201302513 姓名: 周小多
一、实验目的: 1. 掌握一个简单CPU 的组成原理。 2. 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。 3. 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。
二、实验内容: 1.
要实现一个简单的CPU,并且在此CPU 的基础上,继续构建一个简单的模型计算机。CPU 由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图2-1-1 所示。这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。
2.
本模型机和前面微程序控制器实验相比,新增加一条跳转指令JMP,共有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移),HLT(停机),其指令格式如下(高4位为操作码):
助记符 机器指令码 说明
IN 0010 0000 IN→R0
ADD 0000 0000 R0 + R0→R0
OUT 0011 0000 R0→OUT
JMP addr 1100 0000 addr→ PC
HLT 0101 0000 停机
3. 设计一段机器程序,要求从IN 单元读入一个数据,存于R0,将R0 和自身相加,结果存于R0,再将R0 的值送OUT 单元显示。根据要求可以得到如下程序,地址和内容均为二进制数。
地址 内容 助记符 说明
00100000 ; START: IN R0 从 IN 单元读入数据送 R0
00000000 ; ADD R0,R0 R0 和自身相加,结果送 R0
00110000 ; OUT R0 R0 的值送 OUT 单元显示
11100000 ; JMP START 跳转至 00H 地址
00000000
01010000 ; HLT 停机
三、项目要求及分析:
1. 试修改现有的指令系统,将加法指令的功能修改为R0的内容和某个存储单元的内容相加;增加存数、取数和减法三条机器指令,指令助记符分别为 STA、LAD 和SUB,指令操作码分别为十六进制的60、70和80。
1R0和某个存储器相加,R0是可以直接读进来的,R0和另一个存储单元内容相加,如果两个值都是读入的话,就要将一个放在R0中,可以直接读入,另一个放存在储单元。可以先将值读入到R0 中,在将R0保存到其他的存储单元中,进行加法时从存储单元中取出放在临时寄存器中,这样是两个寄存器相加减就可以。
具体步骤:1)将R0中的数据送ALU中的A;?2)给出另一个数在内存中的地址;?
3)从内存中取出相应的数据并送ALU中的B;?4)进行加法运算并将结果送R0。
2对于增加存数、取数和减法三条机器指令,
存数指令STA具体操作过程如下:
1)从IN读入数据要存储的地址;
?2)将地址送至AR;
?3)从IN读入要存储的数据;?
4)将数据送入内存中的相应存储单元。
对于取数指令LAD具体操作过程如下:
1)从IN读入数据的存储地址;?
2)将存储地址送至AR;
?3)将取出的数据送至R0?
?
减法指令的具体操作过程如下:
?1)将被减数送至ALU的A;
?2)将减数送至ALU的B;?
3)ALU进行减法操作,结果送R0;
2. 利用修改后的指令系统编写一段程序,完成十六位二进制数的加减法运算。
。
答: 十六进制比八进制多了一半,该内容利用的指令系统,编写相应的程序。可以先将两个十六位的二进制数的高八位和低八位分别存入不同的地址,然后先取出两个数低八位进行相加,送至OUT单元显示,进位进行存储;再进行两个数低八位相加,结果在数据总线出显示。
四、具体实现: 微程序设计流程图:
微代码
$M 00 000001 ; NOP
$M 01 006D42
您可能关注的文档
最近下载
- 人教版(2024)一年级数学上册《10的认识》(课件).pptx VIP
- 2024全国职业院校技能大赛GZ106研学旅行赛项规程+赛题 (3).docx VIP
- 八年级英语上册各单元练习题及专题语法习题.doc VIP
- FANUC工业机器人集成359.pptx VIP
- 高温气冷堆核电站三壳组对专用工装及安装方法.pdf VIP
- 【医学】呼吸内科诊疗常规 共(29页).doc VIP
- 公司财务原理 第十一版 习题答案 - Principles of Corporate Finance ,11th edition ,solution.pdf VIP
- 电气控制与S7-1200 PLC应用技术教程郑海春习题答案.docx VIP
- 《网络安全》安全教育PPT课件.pptx VIP
- 《结核病患者外周血淋巴细胞亚群检测及临床应用专家共识》(2020)要点.docx VIP
文档评论(0)