- 1、本文档共85页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第1章计算机系统概述
2.简单回答下列问题。
(1)冯·诺依曼计算机由哪几部分组成?各部分的功能是什么?
(2)什么是“存储程序”工作方式?
(3)一条指令的执行过程包含哪几个阶段?
(4)计算机系统的层次结构如何划分?
(5)计算机系统的用户可分哪几类?每类用户工作在哪个层次?
【分析解答】(略)
5.假定图1.1所示模型机(采用图1.2所示指令格式)的指令系统中,除了有mov(op=0000)、add
(op=0001)、load(op=1110)和store(op=1111)指令外,R型指令还有减(sub,op=0010)和乘
(mul,op=0011)等指令,请仿照图1.3给出求解表达式“z=(x-y)*y;”所对应的指令序列(包括机
器代码和对应的汇编指令)以及在主存中的存放内容,仿照图1.5给出每条指令的执行过程,并写出
指令执行过程中每个阶段所包含的微操作。
【分析解答】
实现z=(x-y)*y功能的指令序列至少需要6条指令,占6个存储单元,假定这6条指令分别存放在
第0~5单元,变量x、y和z分别存放在第8、9、10这三个单元,则实现z=(x-y)*y功能的指令序列在
主存中的存放内容(粗体部分)以及对每条指令功能的说明如下。
主存地址主存单元内容内容说明(Ii表示第i条指令)指令的符号表示
011101001I1:R[0]←M[9];op=1110:取数操作loadr0,9#
100000100I2:R[1]←R[0];op=0000:传送操作movr1,r0
211101000I3:R[0]←M[8];op=1110:取数操作loadr0,8#
300100001I4:R[0]←R[0]-R[1];op=0010:减操作subr0,r1
400110001I5:R[0]←R[0]*R[1];op=0010:乘操作mulr0,r1
511111010I6:M[10]←R[0];op=1111:存数操作store10#,r0
6
7
800011001操作数x,假设值为25
900011111操作数y,假设值为31
1000000000结果z,初始值为0
指令执行过程中每个阶段所包含的微操作如下。
I1:11101001I2:00000100I3:11101000I4:00100001I5:00110001I5:11111010
取指令IR←M[0000]IR←M[0001]IR←M[1000]IR←M[0011]IR←M[0100]IR←M[0101]
指令译码op=1110,取数op=0000,传送op=1110,取数op=0010,减op=0011,乘op=1111,存数
PC增量PC←0000+1PC←0001+1PC←0010+1PC←0011+1PC←0100+1PC←0101+1
A←R[0]、A←R[0]、
取数并执行MDR←M[1001]A←R[0]、movMDR←M[1000]
文档评论(0)