完整版计算机组成原理白中英第三版习题答案Word下载.docx
《完整版计算机组成原理白中英第三版习题答案Word下载.docx》由会员分享,可在线阅读,更多相关《完整版计算机组成原理白中英第三版习题答案Word下载.docx(39页珍藏版)》请在冰豆网上搜索。
![完整版计算机组成原理白中英第三版习题答案Word下载.docx](https://file1.bdocx.com/fileroot1/2023-1/10/e674a27c-a87f-4250-a942-dcc8c80c6f1b/e674a27c-a87f-4250-a942-dcc8c80c6f1b1.gif)
[-127]补=10000001
[-127]反=10000000
[-127]移=00000001
(4)[-1]原=10000000
[-1]补=10000000
[-1]反=11111111
[-1]移=00000000
(5)-1=-00000001
[-1]原=10000001
[-1]补=11111111
[-1]反=11111110
[-1]移=01111111
2.[x]补=a0.a1a2…a6
解法一、
(1)若a0=0,则x>
0,也满足x>
-0.5
此时a1→a6可任意
(2)若a0=1,则x<
=0,要满足x>
-0.5,需a1=1
即a0=1,a1=1,a2→a6有一个不为0
解法二、
-0.5=-0.1
(2)=-0.100000=1,100000
(1)若x>
=0,则a0=0,a1→a6任意即可
[x]补=x=a0.a1a2…a6
(2)若x<
0,则x>
只需-x<
0.5,-x>
0
[x]补=-x,[0.5]补=01000000
即[-x]补<
01000000
即a0a1=11,a2→a6不全为0或至少有一个为1(但不是“其余取0”)
3.字长32位浮点数,阶码8位,用移码表示,尾数23位,用补码表示,基为2
(1)最大的数的二进制表示
E=11111111
Ms=0,M=11…1(全1)
表示为:
11…1011…1
8个23个
即:
2127×
(1-2-23)
(2)最小的二进制数
Ms=1,M=00…0(全0)(注意:
用10….0来表示尾数-1)
表示为:
11…1100…0
即:
(-1)
(3)规格化范围
正最大E=11…1,M=11…1,Ms=0
8个23个
正最小E=00…0,M=100…0,Ms=0
8个22个
即:
2-128×
2-1
负最大E=00…0,M=011…1,Ms=1
8个22个
(最接近0的负数)即:
-2-128×
(2-1+2-23)
负最小E=11…1,M=00…0,Ms=1
8个23个
(-1)=-2127
规格化所表示的范围用集合表示为:
[2-128×
2-1,2127×
(1-2-23)]∪[-2127,-2-128×
(2-1+2-23)]
(4)最接近于0的正规格化数、负规格化数(由上题可得出)
正规格化数E=00…0,M=100…0,Ms=0
10个20个
负规格化数E=00…0,M=011…1,Ms=1
10个20个
4.假设浮点数格式如下:
(1)
阶补码:
111
尾数补码:
011011000
机器数:
111011011000
(2)
100101000
111000101000
5.
(1)x=0.11011,y=0.00011
x+y=0.11110
无溢出
(2)x=0.11011,y=-0.10101
x+y=0.00110
无溢出
(3)x=-0.10110
y=-0.00001
x+y=-0.10111
6.
(1)x=0.11011
y=-0.11111
溢出
(2)x=0.10111
y=0.11011
x-y=-0.00100
(3)x=0.11011
y=-0.10011
7.
(1)原码阵列
x=0.11011,y=-0.11111
符号位:
x0⊕y0=0⊕1=1
[x]原=11011,[y]原=11111
[x*y]原=1,1101000101
直接补码阵列
[x]补=(0)11011,[y]补=
(1)00001
[x*y]补=1,00101,11011(直接补码阵列不要求)
带求补器的补码阵列
[x]补=011011,[y]补=100001
乘积符号位单独运算0⊕1=1
尾数部分算前求补输出│X│=11011,│y│=11111
X×
Y=-0.1101000101
(2)原码阵列
x=-0.11111,y=-0.11011
x0⊕y0=1⊕1=0
[x]补=11111,[y]补=11011
[x*y]补=0,11010,00101
[x]补=
(1)00001,[y]补=
(1)00101
[x*y]补=0,11010,00101(直接补码阵列不要求)
带求补器的补码阵列
[x]补=100001,[y]补=100101
乘积符号位单独运算1⊕1=0
尾数部分算前求补输出│X│=11111,│y│=11011
Y=0.1101000101
8.
(1)符号位Sf=0⊕1=1
去掉符号位后:
[y’]补=00.11111
[-y’]补=11.00001
[x’]补=00.11000
(2)符号位Sf=1⊕0=1
[y’]补=00.11001
[-y’]补=11.00111
[x’]补=00.01011
9.
(1)x=2-011*0.100101,y=2-010*(-0.011110)
[x]浮=11101,0.100101
[y]浮=11110,-0.011110
Ex-Ey=11101+00010=11111
[x]浮=11110,0.010010
(1)
规格化处理:
1.010010阶码11100
x+y=1.010010*2-4=2-4*-0.101110
规格化处理:
0.110000阶码11110
x-y=2-2*0.110001
(2)x=2-101*(-0.010110),y=2-100*0.010110
[x]浮=11011,-0.010110
[y]浮=11100,0.010110
Ex-Ey=11011+00100=11111
[x]浮=11100,1.110101(0)
0.101100阶码11010
x+y=0.101100*2-6
1.011111阶码11100
x-y=-0.100001*2-4
10.
(1)Ex=0011,Mx=0.110100
Ey=0100,My=0.100100
Ez=Ex+Ey=0111
规格化:
26*0.111011
(2)Ex=1110,Mx=0.011010
Ey=0011,My=0.111100
Ez=Ex-Ey=1110+1101=1011
[Mx]补=00.011010
[My]补=00.111100,[-My]补=11.000100
商=0.110110*2-6,余数=0.101100*2-6
11.
4位加法器如上图,
(1)串行进位方式
C1=G1+P1C0其中:
G1=A1B1P1=A1⊕B1(A1+B1也对)
C2=G2+P2C1G2=A2B2P2=A2⊕B2
C3=G3+P3C2G3=A3B3P3=A3⊕B3
C4=G4+P4C3G4=A4B4P4=A4⊕B4
(2)并行进位方式
C1=G1+P1C0
C2=G2+P2G1+P2P1C0
C3=G3+P3G2+P3P2G1+P3P2P1C0
C4=G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C0
12.
(1)组成最低四位的74181进位输出为:
C4=Cn+4=G+PCn=G+PC0,C0为向第0位进位
其中,G=y3+y2x3+y1x2x3+y0x1x2x3,P=x0x1x2x3,所以
C5=y4+x4C4
C6=y5+x5C5=y5+x5y4+x5x4C4
(2)设标准门延迟时间为T,“与或非”门延迟时间为1.5T,则进位信号C0,由最低位传送至C6需经一个反相器、两级“与或非”门,故产生C0的最长延迟时间为
T+2*1.5T=4T
(3)最长求和时间应从施加操作数到ALU算起:
第一片74181有3级“与或非”门(产生控制参数x0,y0,Cn+4),第二、三片74181共2级反相器和2级“与或非”门(进位链),第四片74181求和逻辑(1级与或非门和1级半加器,设其延迟时间为3T),故总的加法时间为:
t0=3*1.5T+2T+2*1.5T+1.5T+3T=14T
13.串行状态下:
C1=G1+P1CO
C2=G2+P2C1
C3=G3+P3C2
C4=G4+P4C3
并行状态下:
C2=G2+P2C1=G2+P2G1+P2P1C0
C3=G3+P3C2=G3+P3G2+P3P2G1+P3P2P1C0
C4=G4+P4C3=G4+P4P3C2+P4P3P2C1+P4P3P2P1C0
14.设余三码编码的两个运算数为Xi和Yi,第一次用二进制加法求和运算的和数为Si’,进位为Ci+1’,校正后所得的余三码和数为Si,进位为Ci+1,则有:
Xi=Xi3Xi2Xi1Xi0
Yi=Yi3Yi2Yi1Yi0
Si’=Si3’Si2’Si1’Si0’
根据以上分析,可画出余三码编码的十进制加法器单元电路如图所示。
15.
第三章
1.
(1)
(2)
(3)1位地址作芯片选择
2.
(1)
每个模块要16个DRAM芯片
(3)64*16=1024块
由高位地址选模块
3.
(1)根据题意,存储总容量为64KB,故地址总线需16位。
现使用16K*8位DRAM芯片,共需16片。
芯片本身地址线占14位,所以采用位并联与地址串联相结合的方法来组成整个存储器,其组成逻辑图如图所示,其中使用一片2:
4译码器。
(2)根据已知条件,CPU在1us内至少访存一次,而整个存储器的平均读/写周期为0.5us,如果采用集中刷新,有64us的死时间,肯定不行
如果采用分散刷新,则每1us只能访存一次,也不行
所以采用异步式刷新方式。
假定16K*1位的DRAM芯片用128*128矩阵存储元构成,刷新时只对128行进行异步方式刷新,则刷新间隔为2ms/128=15.6us,可取刷新信号周期15us。
刷新一遍所用时间=15us×
128=1.92ms
4.
(1)
(3)如果选择一个行地址进行刷新,刷新地址为A0-A8,因此这一行上的2048个存储元同时进行刷新,即在8ms内进行512个周期。
刷新方式可采用:
在8ms中进行512次刷新操作的集中刷新方式,或按8ms/512=15.5us刷新一次的异步刷新方式。
5.所设计的存储器单元数为1M,字长为32,故地址长度为20位(A19~A0),所用芯片存储单元数为256K,字长为16位,故占用的地址长度为18位(A17~A0)。
由此可用位并联方式与地址串联方式相结合的方法组成组成整个存储器,共8片RAM芯片,并使用一片2:
其存储器结构如图所示。
6.
(1)系统16位数据,所以数据寄存器16位
(2)系统地址128K=217,所以地址寄存器17位
(3)共需要8片
(4)组成框图如下
7.
(1)组内地址用A12~A0
(2)小组译码器使用3:
8译码器
(3)RAM1~RAM5各用两片8K*8的芯片位并联连接
8.顺序存储器和交叉存储器连续读出m=8个字的信息总量都是:
q=64位*8=512位
顺序存储器和交叉存储器连续读出8个字所需的时间分别是:
t1=mT=8*100ns=8*10-7s
顺序存储器和交叉存储器的带宽分别是:
9.cache的命中率
cache/主存系统效率e为
平均访问时间Ta为
10.h*tc+(1-h)*tm=ta
11.虚拟地址为30位,物理地址为22位。
页表长度:
12.虚拟存储器借助于磁盘等辅助存储器来扩大主存容量,使之为更大或更多的程序所使用。
在此例中,若用户不具有虚存,则无法正常运行程序,而具有了虚存,则很好地解决了这个问题。
13.设取指周期为T,总线传送周期为τ,指令执行时间为t0
(1)t=(T+5τ+6t0)*80=80T+400τ+480t0
(2)t=(T+7τ+8t0)*60=60T+420τ+480t0
故不相等。
14.
页面访问序列
1
2
4
3
命中率
a
3/11
=
27.3%
b
c
命中
15.B,D
16.B,C
第四章
1.不合理。
指令最好半字长或单字长,设16位比较合适。
2.
单操作数指令为:
28-m-n条
3.
(1)RR型指令
(2)寄存器寻址
(3)单字长二地址指令
(4)操作码字段OP可以指定26=64种操作
4.
(1)双字长二地址指令,用于访问存储器。
操作码字段可指定64种操作。
(2)RS型指令,一个操作数在通用寄存器(共16个),另一个操作数在主存中。
(3)有效地址可通过变址寻址求得,即有效地址等于变址寄存器(共16个)内容加上位移量。
5.
(1)双操作数指令
(2)23=8种寻址方式
(3)24=16种操作
6.
(1)直接寻址方式
(2)相对寻址方式
(3)变址寻址方式
(4)基址寻址方式
(5)间接寻址方式
(6)变址间接寻址方式
7.40条指令需占6位,26=64,剩余24条可作为扩充
4种寻址方式需占2位
剩余8位作为地址
X=00直接寻址方式E=D
X=01立即寻址方式
X=10变址寻址方式E=(R)+D
X=11相对寻址方式E=(PC)+D
8.
(1)50种操作码占6位,3种寻址方式占2位
X=00页面寻址方式E=PCH-D
X=01立即寻址方式
X=10直接寻址方式E=D
(2)PC高8位形成主存256个页面,每页
个单元
(3)寻址模式X=11尚未使用,故可增加一种寻址方式。
由于CPU中给定的寄存器中尚可使用PC,故可增加相对寻址方式,其有效地址E=PC+D,如不用相对寻址,还可使用间接寻址,此时有效地址E=(D)。
当位移量变成23位时,寻址模式变成3位,可有更多的寻址方式。
9.16个通用寄存器占4位,64种操作占6位,剩下22位用于存储器地址,
采用R为基址寄存器寻址,地址=(R)+D
当基址最大,D也是最大的时候,寻址能力最大
而寄存器是32位的,
故最大存储空间是232+222=4GB+4MB。
10、11、12、13、
14.C
15.
(1)寄存器
(2)寄存器间接
(3)立即
(4)直接
(5)相对、基值、变址
第五章
1.IR、AR、DR、AC
2.STAR1,(R2)
3.LDA(R3),R0
4.
5.节拍脉冲T1,T2,T3的宽度实际上等于时钟脉冲的周期或是它的倍数。
此处T1=T2=200ns,
T3=400ns,所以主脉冲源的频率应为
。
为了消除节拍脉冲上的毛刺,环形脉冲发生器采用移位寄存器形式。
图中画出了题目要求的逻辑电路图与时序信号关系图。
根据时序信号关系,T1,T2,T3三个节拍脉冲的逻辑表达式如下:
T1用与门实现,T2和T3则用C2的
端和C1的Q端加非门实现,其目的在于保持信号输出时延时间的一致性并与环形脉冲发生器隔离。
6.
7.M=G
S3=H+D+F
S2=A+B+H+D+E+F+G
S1=A+B+F+G
C=H+D+Ey+Fy+Gφ
8.经分析,(d,i,j)和(e,f,h)可分别组成两个小组或两个字段,然后进行译码,可得六个微命令信号,剩下的a,b,c,g四个微命令信号可进行直接控制,其整个控制字段组成如下:
9.P1=1,按IR6、IR5转移
P2=1,按进位C转移
10.
(1)将C,D两个暂存器直接接到ALU的A,B两个输入端上。
与此同时,除C,D外,其余7个寄存器都双向接到单总线上。
11.
(1)假设判别测试字段中每一位作为一个判别标志,那么由于有4个转移条件,故该字段为4位。
下地址字段为9位,因为控存容量为512单元。
微命令字段则是(48-4-9)=35位。
(2)对应上述微指令格式的微程序控制器逻辑框图如图所示。
其中微地址寄存器对应下地址字,P字段即为判别测试字段,控制字段即为微命令字段,后两部分组成微指令寄存器。
地址转移逻辑的输入是指令寄存器的OP码、各种状态条件以及判别测试字段所给的判别标志(某一位为1),其输出修改微地址寄存器的适当位数,从而实现微程序的分支转移。
就是说,此处微指令的后继地址采用断定方式。
12.
(1)流水线的操作周期应按各步操作的最大时间来考虑,即流水线时钟周期性
(2)遇到数据相关时,就停顿第2条指令的执行,直到前面指令的结果已经产生,因此至少需要延迟2个时钟周期。
(3)如果在硬件设计上加以改进,如采用专用通路技术,就可使流水线不发生停顿。
13.
(1)
(3)
14.
如上两图所示,执行相同的指令,在8个单位时间内,流水计算机完成5条指令,而非流水计算机只完成2条,显然,流水计算机比非流水计算机有更高的吞吐量。
15.证:
设n条指令,K级流水,每次流水时间τ
则用流水实现Tp=Kτ+(n-1)τ
非流水实现Ts=Kτn
n->
∞时,
n=1时,
,则可见n>
1时Ts>
Tp,故流水线有更高吞吐量
16.
(1)写后读RAW
(2)读后写WAR
(3)写后写WAW
17.
(1)
第六章
1.单总线结构: