当前位置:文档之家› 计算机组织与体系结构课后习题答案

计算机组织与体系结构课后习题答案

体系结构课后习题答案第二章1,设A,B,C 的内存地址分别是A[i],B[i],C[i],i 从1到1000 LOAD M (A[i]) ADD M (B[i]) STOR M(C[i])2, a LOAD M (2) 00000001|000000000010 b 一次3,在IAS 机上读取一个值的过程如下:IR 中操作码→控制总线,存储器地址X →MAR,MAR 中值→地址总线 X 中数据→数据总线,数总线地址→MBR 写入一个值:IR 中操作码→控制总线,存储器地址X →MAR,MAR 值→地址总线 MBR 值→数据总线,数据总线值→X 4,程序代码:LOAD M(0FA) ADD M(0FB) LOAD M(0FA)JUMP +M(08D,0:19) LOAD –M(0FA) ADD M(0FB)程序代码意图:首先装入0FA 值,然后与0FB 相加,再装入0FA 值,若AC 中值非负,取0FA 左指令再装入-(0FA )将0FB 的值相加后装入AC 中 5,如图所示ACMQ算术-逻辑电路4040MBR I/O 设备IBR IR 控制电路PCMAR主存储器M40208401212840126,便于同时存取两个连续地址序号的存储单元,提高访问速度7,(1)存储器数据传输率快了32倍(2)数据通道最大数目增大了一倍(3)单通道最大数据传输速率提升了5倍。

各种技术的使用,提升了整机的性能。

8,回答正确,但是不适合用户理解。

MAC机的时钟速率是1.2ghz,P4为2.4ghz,而时钟速率在一定程度上反映了计算机的执行速度,所以P4的机器可能是目前最符合用户要求的机型。

9,在这种表示方法中,10个管表示了十个数字,而使用二进制可以表示错误!未找到引用源。

个数字10,(画图)略11,MIPS=错误!未找到引用源。

*错误!未找到引用源。

12,∵MIPS=错误!未找到引用源。

*错误!未找到引用源。

∴CPI(VAX)=5,CPI(IBM)=1.39IC≈错误!未找到引用源。

13,CPI=(1+2+2+2)/错误!未找到引用源。

=7*错误!未找到引用源。

MIPS=错误!未找到引用源。

*错误!未找到引用源。

=错误!未找到引用源。

*错误!未找到引用源。

=5.71*错误!未找到引用源。

T=7*错误!未找到引用源。

*错误!未找到引用源。

=1.75*错误!未找到引用源。

14,a:算术平均法适用于较多程序,抖动较大调和平均发适用于较少程序,抖动较小b:计算机A Ra=1/4×(100+0.1+0.2+1)≈25 MIPSRb=4/(1/100+10+5+1)=0.25 MIPS计算机B Ra=1/4×(10+0.1++1+1/8)=3.06Rb=4/(0.1+1+10+8)=0.21计算机C Ra=1/4×(5+5+2+1)=3.25Rb=4/(0.2+0.2+0.5+1)=2.1故C>A>B第三章1 步骤一存储器CPU寄存器1 0011 1 pc2 5940 ac3 26 0011 ir5 00036步骤二存储器CPU寄存器1 00112 pc2 5940 0003 ac3 26 0011 ir5 00036步骤三存储器CPU寄存器1 00112 pc2 5940 0003 ac3 26 5940 ir5 00036940 0003步骤四存储器CPU寄存器1 0011 3 pc2 5940 0006 ac3 26 5940 ir5 0003 3+3=66940 0003步骤五存储器CPU寄存器1 0011 3 pc2 5940 0006 ac3 26 26 ir5 00036940 0003步骤六存储器CPU寄存器1 0011 4 pc2 5940 0006 ac3 26 26 ir5 00036 00063.2步骤一中详细解释:Pc中内容为300,将PC→MAR,然后将第一条指令装入数据总线,数据总线→MBR,MBR→IR3.3 (a)最大可直接寻址的容量是错误!未找到引用源。

b(b),1,取一次指令要两次访问存储器2,将降低存储器容量(c) 程序计数器和指令寄存器各需要24位和8位。

3.4(a)0~(错误!未找到引用源。

)(b) 0~(错误!未找到引用源。

)(c)I/O模块与CPU互连的特点(d) 错误!未找到引用源。

个,1个。

因为总共只有16位cpu地址,故处理器只能支持(16-I/O端口位数)的位数3.5T=1/2*错误!未找到引用源。

,外部数据总线L1=16,L=32(1)f=1/t=2*错误!未找到引用源。

∴v=错误!未找到引用源。

*f≈错误!未找到引用源。

b/s(2)能提高性能,由公式v=1/T* 错误!未找到引用源。

可知f与L变大都可以提高传输速率3.6(1)电传输入→INPRINPR→CPU(经I/O模块)CPU→OUTR(经I/O模块)OUTR→电传输出(2)设置优先级,cpu处理为1,cpu通过I/O模块向外输出或者输入为2,电传输入/输出为3.设置中断允许位,当优先级较低的操作遇到高优先级操作的中断请求时,置IEN=1,允许中断,从而实高速cpu处理与低速I/O处理的协调。

3.7(1)错误!未找到引用源。

(2)传指令时,为相同的传输速率传数据时,仍然为错误!未找到引用源。

倍差3.8这段时间一定比时钟周期小。

因为链式反应在一个时钟周期开始的时候应判断各主控方的优先级,只有该时间周期小于时钟周期才能即调整优先级又实现各主控方各自的操作。

3.9减小工作量,提高效率。

因为不用判断优先级为16的设备的TR线,任一高优先级设备可抢占该设备时间片,只有TR0-TR15都无效时,TR16自然使用时间片。

3.10 (1) 因为中断就是为了提高高速设备的使用效率,平衡高低速设备。

故优先级越低,其速率就越低,其余高优先级操作耗时都比其少,所以TR16的平均等待时间就最低。

(在该特定设备中)(2) 若其余操作一直请求使用时间片,这种条件下不成立。

3.11(a)时钟周期T = 1 / f = 100 ns读总线周期= 2.5T = 250 ns(b)250 – 20 = 230 ns处理器至少应在230ns时将数据放到总线上3.13(a)总线时钟周期= 1 / f * 109 ns =200 nsWrite信号宽度= 50 * 200 = 1000(b)(c)3.14(a)原周期= 4 + 4 * 3 =16时钟周期4 * 2 /16 = 50%(b)原周期= 4 + 3 * 3 + 13 = 26时钟周期4 * 2 / 26 = 30.8%3.15(a)Intel8088的总线宽度为8位时钟周期T = 1 / f = 1 / 8M =125 ns4 * 8 / 4T = 64M 位/s(b)2 * 8 / 4T = 32M 位/s3.16若使用偶对齐的字,取操作数需要4个存储器周期(包括取指令),4 *4 / 4M = 4 ms若使用偶对齐的字,取操作数需要8个存储器周期(包括取指令),8 *4 / 4M = 8 ms3.171 * 20% +2 * 40% + 4 * 40% = 2.6处理速率相对16位微处理器提高了1.6倍3.18处理器处理完一条指令后才会进入中断处理周期9 * T = 9 / f = 9 / 10M = 900 ns第四章4.1m=64,k=4组数v=m / k=64 / 4=16=2d,d=4块数4k=2s,s=12标记=s-d=8位块大小=2w=128*8=210,w=10主存地址= 标记组字8 4 104.2k = 2块大小=行大小=2w = 16,w = 4寻址单元数=2s+w = 64M= 64*220s + w = 26,s = 22cache的行数= k*v = k*2d = 8K / 16d = 8标记大小= s – d = 14主存地址= 标记组字14 8 44.3(a)直接映射地址标记=8 行=14 字=2 111111 11 0444 1666666 66 1999 2 BBBBBB BB 2EEE 3(b)全关联映射地址标记=22 字=2111111 044444 1666666 199999 2BBBBBB 2EEEEE 3(c)两路组关联映射地址标记=9 组=13 字=2 111111 022 0444 1666666 0CC 1999 2 BBBBBB 177 0EEE 34.4(a)地址长度=s+w=24寻址单元数=2s+w=224块大小=2w=4主存的块数=2s=222Cache行数=m=2r=214标记大小=s-r=8(b)地址长度=s+w=24寻址单元数=2s+w=224块大小=2w=4主存的块数=2s=222标记大小=s=22(c)地址长度=s+w=24寻址单元数=2s+w=224块大小=2w=4主存的块数=2s=222每组的行数=k=2组数v=2d=213Cache行数=k*v=2*213=214标记大小=s-d=94.5每组的行数=k=4块大小=行大小=2w=4*4=24,w=4行数=16k / 24 = 210=k*v组数v=210 / 22 = 28 = 2d,d=8标记s – d = 20主存地址= 标记组字20 8 4对于地址ABCDE8F8,转化为二进制为:1010 1011 1100 1101 1110 1000 1111 1000块号j=1010 1011 1100 1101 1110 1000 1111 1000 / 2w组号i=j mod v=(1010 1011 1100 1101 1110 1000 1111 1000 / 24)mod 28=27+23 + 22 + 2 + 1=143故地址ABCDE8F8映射到cache的第143组中四行中的任意一行4.8(a)块大小=2w= 8,w=3行数m=2r=32,r=5s + w = 16,s = 13主存地址= 标记行字8 5 3(b)0001 0001 0001 1011块号j = 0001 0001 0001 1011 / 8 = 29 + 25 + 21 + 20行号i = j mod m = (29 + 25 + 21 + 20)mod 25 = 3以此类推,1100 0011 0011 0100的行号为6;1101 0000 0001 1101的行号为3;1010 1010 1010 1010的行号为21。

另解:0001 0001 0001 1011(00011=3)1100 0011 0011 0100(00110=6)1101 0000 0001 1101(00011=3)1010 1010 1010 1010(10101=21)(c)0001 1010 0001 10000001 1010 0001 10010001 1010 0001 10110001 1010 0001 11000001 1010 0001 11010001 1010 0001 11100001 1010 0001 1111(d)32*8=256(e)标记用来将能装入同一行的不同块区分开来。

相关主题