资源描述
计算机组成与体系结构课后答案
33
2020年4月19日
文档仅供参考,不当之处,请联系改正。
计算机组成与体系结构课后答案
【篇一:计算机组成与体系结构(linda null) 第五章课后习题讲解】
、
3、已知2m*16的主存储器的前两个字节中有如下的十六进制数值: 字节0处为fe 字节1处为01,
如果这些字节保存的是一个16位2补整数,问如果按照如下的方式存储数据,那么实际存放的十进制数值分别是多少?
a) 存储器是大端格式 b) 存储器是小端格式 答案:
大端格式:
fe01
原码为:
小端格式:
01fe
原码为:
8、将下列表示式由中缀表示法变换成反向逆波兰(后缀)表示法:
a)x*y+w*z+v*u b)w*x+w*(u*v+z)
c)(w*(x+y*(u*v)))/(u*(x+y)) 答案:
b)w*x + w*(u*v + z) =wx* + w*(uv* + z) =wx* + w*(uv*z +) =wx* + wuv*z + * =wx* wuv*z+*+
c)(w*(x + y*(u*v)))/(u*(x + y)) =(w*(x + y*(uv*)))/(u*(xy+)) =(w*(x + yuv**))/uxy+* =(w*(xyuv**+))/uxy+* =(wxyuv**+*)/uxy+* =wxyuv**+*uxy+*/
9、将下列反向逆波兰式(后缀)表示法转换成中缀表示法: a)wxyz-+* =wxy-z+* =wx+y-z* =w*(x+y-z)
b)uvwxyz+*+*+ =uvwxy+z*+*+ =uvwx*(y+z)+*+ =uvw+x*(y+z)*+
=uv*(w+x*(y+z))+ =u+v*(w+x*(y+z))
c)xyz+vw-*z++ =xy+zv-w*z++ =x(y+z)*(v-w)z++ =x(y+z)*(v-w)+z+ =x+((y+z)*(v-w)+z)
11、如果某台计算机的指令格式为:指令的长度共11位,而地址域的大小占4位,试证明采用这种指令格式的计算机是否可能有如下的指令形式,并验证你的答案:
5个二地址指令 45个一地址指令 32个零地址指令 000 xxxx xxxx 001 xxxx xxxx
010 xxxx xxxx 5个二地址指令 011 xxxx xxxx 100 xxxx xxxx 45个一地址指令: 101 0000 xxxx16条 101 1111 xxxx
110 0000 xxxx16条 110 1111 xxxx 111 0000 xxxx13条 111 1100 xxxx 32个0地址指令 111 1110 000016条 111 1110 1111 111 1111 000016条 111 1111 1111
b)假如某台采用上述指令格式的计算机体系结构,并设计了6个2地址指令和24个0地址指令,试问能够在该指令系统中添加的1地址指令的最大数目是多少?
二地址:
一地址: 零地址:
假设2地址这样用:
【篇二:计算机体系结构课后习题原版答案_张晨曦著】
............................................................... 1 第2章 指令集结构的分类 ........................................................................................ 6 第3章 流水线技术 ................................................................................................... 8 第4章 指令级并行 ................................................................................................. 20 第5章 存储层次 .................................................................................................... 30 第6章输入输出系统 ............................................................................................... 38
第1章 计算机系统结构的基本概念
1.1 解释下列术语 层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。
虚拟机:用软件实现的机器。
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此重复,直到解释执行完整个程序。
计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
在计算机技术中,把这种原来存在的事物或属性,但从某种角度看又仿佛不存在的概念称为透明性。
计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,
受限于该部件的执行时间占总执行时间的百分比。
程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。包括时间局部性和空间局部性。
cpi:每条指令执行的平均时钟周期数。
测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。
系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。
软件兼容:一个软件能够不经修改或者只需少量修改就能够由一台计算机移植到另一台计算机上运行。差别只是执行时间的不同。
向上(下)兼容:按某档计算机编制的程序,不加修改就能运行于比它高(低)档的计算机。
向后(前)兼容:按某个时期投入市场的某种型号计算机编制的程序,不加修改地就能运行于在它之后(前)投入市场的计算机。
兼容机:由不同公司厂家生产的具有相同系统结构的计算机。
模拟:用软件的方法在一台现有的计算机(称为宿主机)上实现另一台计算机(称为虚拟机)的指令系统。
仿真:用一台现有计算机(称为宿主机)上的微程序去解释实现另一台计算机(称为目标机)的指令系统。
并行性:计算机系统在同一时刻或者同一时间间隔内进行多种运算或操作。只要在时间上相互重叠,就存在并行性。它包括同时性与并发性两种含义。
时间重叠:在并行性概念中引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
资源重复:在并行性概念中引入空间因素,以数量取胜。经过重复设置硬件资源,大幅度地提高计算机系统的性能。
资源共享:这是一种软件方法,它使多个任务按一定时间顺序轮流使用同一套硬件设备。
耦合度:反映多机系统中各计算机之间物理连接的紧密程度和交互作用能力的强弱。
紧密耦合系统:又称直接耦合系统。在这种系统中,计算机之间的物理连接的频带较高,一般是经过总线或高速开关互连,能够共享主存。
松散耦合系统:又称间接耦合系统,一般是经过通道或通信线路实现计算机之间的互连,能够共享外存设备(磁盘、磁带等)。计算机之间的相互作用是在文件或数据集一级上进行。
异构型多处理机系统:由多个不同类型、至少担负不同功能的处理机组成,它们按照作业要求的顺序,利用时间重叠原理,依次对它们的多个任务进行加工,各自完成规定的功能动作。
同构型多处理机系统:由多个同类型或至少担负同等功能的处理机组成,它们同时处理同一作业中能并行执行的多个任务。
1.2 试用实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系。 答:如在设计主存系统时,确定主存容量、编址方式、寻址范围等属于计算机系统结构。确定主存周期、逻辑上是否采用并行主存、逻辑设计等属于计算机组成。选择存储芯片类型、微组装技术、线路设计等属于计算机实现。
计算机组成是计算机系统结构的逻辑实现。计算机实现是计算机组成的物理实现。一种体系结构能够有多种组成。一种组成能够有多种实现。
1.3 计算机系统结构的flynn分类法是按什么来分类的?共分为哪几类? 答:flynn分类法是按照指令流和数据流的多倍性进行分类。把计算机系统的结构分为: (1) 单指令流单数据流sisd (2) 单指令流多数据流simd (3) 多指令流单数据流misd (4) 多指令流多数据流mimd
1.5 分别从执行程序的角度和处理数据的角度来看,计算机系统中并行性等级从低到高可分为哪几级?
答:从处理数据的角度来看,并行性等级从低到高可分为:
(1)字串位串:每次只对一个字的一位进行处理。这是最基本的串行处理方式,不存在并行性;
(2)字串位并:同时对一个字的全部位进行处理,不同字之间是串行的。已开始出现并行性;
(3)字并位串:同时对许多字的同一位(称为位片)进行处理。这种方式具有较高的
并行性;
(4)全并行:同时对许多字的全部位或部分位进行处理。这是最高一级的并行。 从执行程序的角度来看,并行性等级从低到高可分为: (1)指令内部并行:单条指令中各微操作之间的并行; (2)指令级并行:并行执行两条或两条以上的指令;
(3)线程级并行:并行执行两个或两个以上的线程,一般是以一个进程内派生的多个线程为调度单位;
(4)任务级或过程级并行:并行执行两个或两个以上的过程或任务(程序段),以子程序或进程为调度单元;
(5)作业或程序级并行:并行执行两个或两个以上的作业或程序。
1.6 某台主频为400mhz的计算机执行标准测试程序,程序中指令类型、执行数量和平均时钟周期数如下:
求该计算机的有效cpi、mips和程序执行时间。
1.7 将计算机系统中某一功能的处理速度加快10倍,但该功能的处理时间仅为整个系统运行时间的40%,则采用此增强功能方法后,能使整个系统的性能提高多少?
解 由题可知:可改进比例 = 40% = 0.4部件加速比 = 10
根据amdahl定律可知:
系统加速比
?
1
0.410
?1.5625
?1?0.4??
采用此增强功能方法后,能使整个系统的性能提高到原来的1.5625倍。
1.8 计算机系统中有三个部件能够改进,这三个部件的部件加速比为:
部件加速比1=30;部件加速比2=20; 部件加速比3=10
(1) 如果部件1和部件2的可改进比例均为30%,那么当部件3的可改进比例为多少时,系统加速比才能够达到10?
(2) 如果三个部件的可改进比例分别为30%、30%和20%,三个部件同时改进,那么系统中不可加速部分的执行时间在总执行时间中占的比例是多少?
解:(1)在多个部件可改进情况下,amdahl定理的扩展:
sn?
(1?
1
fisi
?fi)??
已知s1=30,s2=20,s3=10,sn=10,f1=0.3,f2=0.3,得:
10?
1
1(-0.3?0.3?f3)?(0.3/30?0.3/20?f3/10)
得f3=0.36,即部件3的可改进比例为36%。
(2)设系统改进前的执行时间为t,则3个部件改进前的执行时间为:(0.3+0.3+0.2)t = 0.8t,不可改进部分的执行时间为0.2t。
已知3个部件改进后的加速比分别为s1=30,s2=20,s3=10,因此3个部件改进后的执行时间为:
tn?
0.3t30
?
0.3t20
?
0.2t10
?0.045t
改进后整个系统的执行时间为:tn = 0.045t+0.2t = 0.245t
那么系统中不可改进部分的执行时间在总执行时间中占的比例是:
0.2t0.245t
?0.82
1.9 假设某应用程序中有4类操作,经过改进,各操作获得不同的性能提高。具体数据如下表所示:
(2)各类操作单独改进后,程序获得的加速比分别是多少? (3)4类操作均改进后,整个程序的加速比是多少? 解:根据amdahl定律sn?
1(1?fe)?
fese
可
4类操作均改进后,整个程序的加速比:
sn?
(1?
1
?fi)??
fisi
?2.16
【篇三:计算机体系结构习题答案】
=txt>1.1 解释下列术语
层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。 虚拟机:用软件实现的机器。
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此重复,直到解释执行完整个程序。
计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。 透明性:在计算机技术中,把这种原来存在的事物或属性,但从某种角度看又仿佛不存在的概念称为透明性。
计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。
计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。
系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。
amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。
程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。包括时间局部性和空间局部性。
cpi:每条指令执行的平均时钟周期数。
测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。
系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。
软件兼容:一个软件能够不经修改或者只需少量修改就能够由一台计算机移植到另一台计算机上运行。差别只是执行时间的不同。
向上(下)兼容:按某档计算机编制的程序,不加修改就能运行于比它高(低)档的计算机。
向后(前)兼容:按某个时期投入市场的某种型号计算机编制的程序,不加修改地就能
运行于在它之后(前)投入市场的计算机。
兼容机:由不同公司厂家生产的具有相同系统结构的计算机。
模拟:用软件的方法在一台现有的计算机(称为宿主机)上实现另一台计算机(称为虚拟机)的指令系统。
仿真:用一台现有计算机(称为宿主机)上的微程序去解释实现另一台计算机(称为目标机)的指令系统。
并行性:计算机系统在同一时刻或者同一时间间隔内进行多种运算或操作。只要在时间上相互重叠,就存在并行性。它包括同时性与并发性两种含义。
时间重叠:在并行性概念中引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
资源重复:在并行性概念中引入空间因素,以数量取胜。经过重复设置硬件资源,大幅度地提高计算机系统的性能。
资源共享:这是一种软件方法,它使多个任务按一定时间顺序轮流使用同一套硬件设备。 耦合度:反映多机系统中各计算机之间物理连接的紧密程度和交互作用能力的强弱。 紧密耦合系统:又称直接耦合系统。在这种系统中,计算机之间的物理连接的频带较高,一般是经过总线或高速开关互连,能够共享主存。
松散耦合系统:又称间接耦合系统,一般是经过通道或通信线路实现计算机之间的互连,能够共享外存设备(磁盘、磁带等)。计算机之间的相互作用是在文件或数据集一级上进行。
异构型多处理机系统:由多个不同类型、至少担负不同功能的处理机组成,它们按照作业要求的顺序,利用时间重叠原理,依次对它们的多个任务进行加工,各自完成规定的功能动作。
同构型多处理机系统:由多个同类型或至少担负同等功能的处理机组成,它们同时处理同一作业中能并行执行的多个任务。
1.2 试用实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系。
答:如在设计主存系统时,确定主存容量、编址方式、寻址范围等属于计算机系统结构。确定主存周期、逻辑上是否采用并行主存、逻辑设计等属于计算机组成。选择存储芯片类型、微组装技术、线路设计等属于计算机实现。
计算机组成是计算机系统结构的逻辑实现。计算机实现是计算机组成的物理实现。一种体系结构能够有多种组成。一种组成能够有多种实现。
1.3 计算机系统结构的flynn分类法是按什么来分类的?共分为哪几类?
答:flynn分类法是按照指令流和数据流的多倍性进行分类。把计算机系统的结构分为:
(1) 单指令流单数据流sisd
(2) 单指令流多数据流simd
(3) 多指令流单数据流misd
(4) 多指令流多数据流mimd
1.4 计算机系统设计中经常使用的4个定量原理是什么?并说出它们的含义。
答:(1)以经常性事件为重点。在计算机系统的设计中,对经常发生的情况,赋予
1.5 分别从执行程序的角度和处理数据的角度来看,计算机系统中并行性等级从低到高可分为哪几级?
答:从处理数据的角度来看,并行性等级从低到高可分为:
(1)字串位串:每次只对一个字的一位进行处理。这是最基本的串行处理方式,不存在并行性;
(2)字串位并:同时对一个字的全部位进行处理,不同字之间是串行的。已开始出现并行性;
(3)字并位串:同时对许多字的同一位(称为位片)进行处理。这种方式具有较高的并行性;
(4)全并行:同时对许多字的全部位或部分位进行处理。这是最高一级的并行。 从执行程序的角度来看,并行性等级从低到高可分为:
(1)指令内部并行:单条指令中各微操作之间的并行;
(2)指令级并行:并行执行两条或两条以上的指令;
(3)线程级并行:并行执行两个或两个以上的线程,一般是以一个进程内派生的多个线程为调度单位;
(4)任务级或过程级并行:并行执行两个或两个以上的过程或任务(程序段),以子程序或进程为调度单元;
(5)作业或程序级并行:并行执行两个或两个以上的作业或程序。
1.6 某台主频为400mhz的计算机执行标准测试程序,程序中指令类型、执行数量
求该计算机的有效cpi、mips和程序执行时间。
(2)mips速率=f/ cpi =400/1.776 =225.225mips
1.7 将计算机系统中某一功能的处理速度加快10倍,但该功能的处理时间仅为整个系统运行时间的40%,则采用此增强功能方法后,能使整个系统的性能提高多少?
解 由题可知:可改进比例 = 40% = 0.4部件加速比 = 10
根据amdahl定律可知: 1系统加速比??1.5625 0.4?1?0.4??1 10
采用此增强功能方法后,能使整个系统的性能提高到原来的1.5625倍。
1.8 计算机系统中有三个部件能够改进,这三个部件的部件加速比为:
部件加速比1=30;部件加速比2=20; 部件加速比3=10
(1) 如果部件1和部件2的可改进比例均为30%,那么当部件3的可改进比例为多少时,系统加速比才能够达到10?
(2) 如果三个部件的可改进比例分别为30%、30%和20%,三个部件同时改进,那么系统中不可加速部分的执行时间在总执行时间中占的比例是多少?
解:(1)在多个部件可改进情况下,amdahl定理的扩展:
1 sn?fi1?10fif)?=?,已知s1=30,s2=20,s3=10,sn(=1?sif2=0.3,得:
110?
得f3=0.36,即部件3的可改进比例为36%。
(2)设系统改进前的执行时间为t,则3个部件改进前的执行时间为:(0.3+0.3+0.2)t = 0.8t,不可改进部分的执行时间为0.2t。
已知3个部件改进后的加速比分别为s1=30,s2=20,s3=10,因此3个部件改进后的执行时间为:
0.3t0.3t0.2ttn????0.045t 30 改进后整个系统的执行时间为:tn = 0.045t+0.2t = 0.245t
那么系统中不可改进部分的执行时间在总执行时间中占的比例是:
0.2t?0.82 0.245t1.9 假设某应用程序中有4类操作,经过改进,各操作获得不同的性能提高。具体
1(-0.3?0.3?f3)?(0.3/30?0.3/20?f3/10)
(1)改进后,各类操作的加速比分别是多少?
(2)各类操作单独改进后,程序获得的加速比分别是多少?
(3)4类操作均改进后,整个程序的加速比是多少?
1
4类操作均改进后,整个程序的加速比:
1sn??2.16
(1??fi)??siif第2章 指令集结构的分类
2.1 解释下列术语
堆栈型机器:cpu 中存储操作数的单元是堆栈的机器。
累加器型机器:cpu 中存储操作数的单元是累加器的机器。
通用寄存器型机器:cpu 中存储操作数的单元是通用寄存器的机器。
cisc:复杂指令集计算机
risc:精简指令集计算机
寻址方式:指令系统中如何形成所要访问的数据的地址。一般来说,寻址方式能够指明指令中的操作数是一个常数、一个寄存器操作数或者是一个存储器操作数。
数据表示:硬件结构能够识别、指令系统能够直接调用的那些数据结构。
2.2 区别不同指令集结构的主要因素是什么?根据这个主要因素可将指令集结构分为哪3类?
答:区别不同指令集结构的主要因素是cpu中用来存储操作数的存储单元。据此可将指令系统结构分为堆栈结构、累加器结构和通用寄存器结构。
2.3 常见的3种通用寄存器型指令集结构的优缺点有哪些?
答:
展开阅读全文