第3章习题答案 计算机组成原理课后答案(清华大学出版社 袁春风主编)

合集下载

计算机组成原理 [袁春风]chap3_1

计算机组成原理 [袁春风]chap3_1

15
南京大学计算机系 多媒体技术研究所 袁春风
3.2.3 先行进位ALU
(1)为什么用先行进位方式 行波进位是串行逐级传递的 整个和的生成受到行波进位的影响 因此 现代计算机采用一种先行进位(Carry look ahead)方式 (2)如何产生先行进位 定义两个辅助函数 Gi=aibi…进位生成 Pi=ai⊕bi…进位传递 通常把实现上述逻辑的电路称为进位生成/传递部件 全加逻辑方程 Si=Pi⊕Ci Ci+1=Gi+PiCi (i=0,1,…n) 设n=4,则 C1=G0+P0C0 C2=G1+P1C1=G1+P1G0+P1P0C0 C3=G2+P2C2=G2+P2G1+P2P1G0+P2P1P0C0 C4=G3+P3C3=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0 由上式可知:各进位之间无等待 相互独立并同时产生 通常把实现上述逻辑的电路称为4位CLA部件 由此 根据Si=Pi⊕Ci 可并行求出各位和 通常把实现Si=Pi⊕Ci的电路称为求和部件 CLA加法器由“进位生成/传递部件” “CLA部件”和“求和部件”构成
高位进位逻辑表达式
9
南京大学计算机系 多媒体技术研究所 袁春风
全加和逻辑
10
南京大学计算机系 多媒体技术研究所 袁春风
全加和逻辑 续
11
南京大学计算机系 多媒体技术研究所 袁春风
全加器逻辑图
上述全加器和Sum的延迟为6ty,进位Cout的延迟为 (假定一个与/或门延迟为1ty 异或门的延迟则为
AL BL CL DL CS DS SS ES IP 16位

计算机组成与系统结构课后答案全(清华大学出版社_袁春风主编)

计算机组成与系统结构课后答案全(清华大学出版社_袁春风主编)

(2)[x]补=10000000 (4)[x]补=11010011 x = –0.0011001B x = –10000000B = –128 x = +0.101001B x = – 101101B = – 45
7.假定一台 32 位字长的机器中带符号整数用补码表示,浮点数用 IEEE 754 标准表示,寄存器 R1 和 R2 的内容分别为 R1:0000108BH,R2:8080108BH。不同指令对寄存器进行不同的操作,因而,不同 指令执行时寄存器内容对应的真值不同。假定执行下列运算指令时,操作数为寄存器 R1 和 R2 的内 容,则 R1 和 R2 中操作数的真值分别为多少? (1) 无符号数加法指令 (2) 带符号整数乘法指令 (3) 单精度浮点数减法指令 参考答案: R1 = 0000108BH = 0000 0000 0000 0000 0001 0000 1000 1011b R2 = 8080108BH = 1000 0000 1000 0000 0001 0000 1000 1011b (1) 对于无符号数加法指令, R1 和 R2 中是操作数的无符号数表示, 因此, 其真值分别为 R1: 108BH, R2:8080108BH。 (2)对于带符号整数乘法指令,R1 和 R2 中是操作数的带符号整数补码表示,由最高位可知, R1 为正数, R2 为负数。R1 的真值为+108BH, R2 的真值为–(0111 1111 0111 1111 1110 1111 0111 0100b + 1b) = –7F7FEF75H。 (3)对于单精度浮点数减法指令,R1 和 R2 中是操作数的 IEEE754 单精度浮点数表示。在 IEEE 754 标准中,单精度浮点数的位数为 32 位,其中包含 1 位符号位,8 位阶码,23 位尾数。 由 R1 中的内容可知, 其符号位为 0, 表示其为正数, 阶码为 0000 0000, 尾数部分为 000 0000 0001 0000 1000 1011,故其为非规格化浮点数,指数为–126,尾数中没有隐藏的 1,用十六进制表示 尾数为+0.002116H,故 R1 表示的真值为+0.002116H × 10-126。 由 R2 中的内容可知, 其符号位为 1, 表示其为负数, 阶码为 0000 0001,尾数部分为 000 0000 0001 0000 1000 1011,故其为规格化浮点数,指数为 1–127 = –126,尾数中有隐藏的 1,用十六进制 表示尾数为–1.002116H,故 R2 表示的真值为–1.002116H × 10-126

计算机组成原理第三章课后习题参考答案

计算机组成原理第三章课后习题参考答案

第三章(P101)1.(1)M 4832*220= 字节 (2)片84*28*51232*1024==K K(3)1位地址作芯片选择2. (1)个内存条4264*264*222426==(2)328*264*22242=每个内存条内共有32个DRAM 芯片 (3)4*32 = 128个主存共需要128个DRAM 芯片,CPU 通过由高位地址选择各内存条。

3. (1)首先计算所需芯片数目:168*232*21416=片 芯片容量为16K ,所以芯片内部寻址需14位;四个芯片组成一组形成32个位线,共需4组,需2位地址进行组间寻址; 其中使用一片2:4译码器;所以所以采用位并联与地址串联相结合的方法来组成整个存储器,其组成逻辑图如图所示,(2)根据已知条件,CPU 在1us 内至少访存一次,而整个存储器的平均读/写周期为0.5us ,如果采用集中刷新,有64us 的死时间,肯定不行 如果采用分散刷新,则每1us 只能访存一次,也不行 所以采用异步式刷新方式。

假定16K*8位的DRAM 芯片用128*128矩阵存储元构成,刷新时只对128行进行异步方式刷新,则刷新间隔为2ms/128 = 15.5us ,可取刷新信号周期15us 。

刷新一遍所用时间=15us ×128=1.92ms4. (1)片328*12832*1024 K K ,共分8组,每组4片;地址线共20位,其中组间寻址需3位,组内17位; (2)(3)如果选择一个行地址进行刷新,刷新地址为A 0-A 8,因此这一行上的2048个存储元同时进行刷新,即在8ms 内进行512个周期(即512行)。

采用异步刷新方式,刷新信号周期为:8ms/512 = 15.5us 。

注:存储器由128K*8位的芯片构成,分8组,每组4片,组内芯片并行工作,需17条地址线进行寻址,其中X 行线为9根,Y 位线为8根,29=512行。

5. 用256K*16位的SRAM 芯片设计1024K*32的存储器,需进行字位同时扩展方式继续拧设计,所需芯片数目:片816*25632*1024 K K ,设计的存储器容量为1M ,字长为32,故需20位地址(A0~A19);所用芯片存储容量为256K ,字长为16位,故片内寻址需18位(A0~A17)。

计算机组成与系统结构课后答案版全(清华大学袁春风主编)

计算机组成与系统结构课后答案版全(清华大学袁春风主编)
(3)(0101 1001 0110.0011)8421= (596.3)10= (1001010100.01001100110011…)2= (254.4CCC…)16
(4)(4E.C)16= (78.75)10= (0100 1110.11)2
4.假定机器数为8位(1位符号,7位数值),写出下列各二进制数的原码和补码表示。
+0.1001,–0.1001,+1.0,–1.0,+0.010100,–0.010100,+0,–0
参考答案:
原码补码
+0.1001:0.10010000.1001000
–0.1001:1.10010001.0111000
+1.0:溢出溢出
–1.0:溢出1.0000000
+0.010100:0.01010000.0101000
(1)无符号数加法指令
(2)带符号整数乘法指令
(3)单精度浮点数减法指令
参考答案:
R1=0000108BH= 0000 0000 0000 0000 0001 0000 1000 1011b
R2=8080108BH= 1000 0000 1000 0000 0001 0000 1000 1011b
(1)对于无符号数加法指令,R1和R2中是操作数的无符号数表示,因此,其真值分别为R1:108BH, R2:8080108BH。
(3)[x]补=0.1010010x = +0.101001B
(4)[x]补=11010011x =–101101B =–45
7.假定一台32位字长的机器中带符号整数用补码表示,浮点数用IEEE 754标准表示,寄存器R1和R2的内容分别为R1:0000108BH,R2:8080108BH。不同指令对寄存器进行不同的操作,因而,不同指令执行时寄存器内容对应的真值不同。假定执行下列运算指令时,操作数为寄存器R1和R2的内容,则R1和R2中操作数的真值分别为多少?

计算机组成与系统结构课后答案版全(清华大学袁春风主编)

计算机组成与系统结构课后答案版全(清华大学袁春风主编)
(2)对于带符号整数乘法指令,R1和R2中是操作数的带符号整数补码表示,由最高位可知,R1为正数,R2为负数。R1的真值为+108BH, R2的真值为–(0111 1111 0111 1111 1110 1111 0111 0100b + 1b) =–7F7FEF75H。
(3)对于单精度浮点数减法指令,R1和R2中是操作数的IEEE754单精度浮点数表示。在IEEE 754标准中,单精度浮点数的位数为32位,其中包含1位符号位,8位阶码,23位尾数。
S2有8条指令,CPI为(1×1+1×2+1×3+5×4)/8 =3.25,所含的时钟周期数为8×3.25=26,执行时间为26/500M = 52ns。
(注:从上述结果来看,对于同一个高级语言源程序,在同一台机器上所生成的目标程序不同,其执行时间可能不同,而且,并不是指令条数少的目标程序执行时间就一定少。)
7.假设同一套指令集用不同的方法设计了两种机器M1和M2。机器M1的时钟周期为0.8ns,机器M2的时钟周期为1.2ns。某个程序P在机器M1上运行时的CPI为4,在M2上的CPI为2。对于程序P来说,哪台机器的执行速度更快?快多少?
参考答案:
假设程序P的指令条数为N,则在M1和M2上的执行时间分别为:
移码补码
+1001:1000100100001001
–1001:0111011111110111
+1:1000000100000001
–1:01111111111111111
+10100:1001010000010100
–10100:0110110011101100
+0:1000000000000000
M2上可以选择一段A和B类指令组成的程序,其峰值MIPS为1500/2=750MIPS。

计算机组成与系统结构课后答案版全(清华大学袁春风主编)

计算机组成与系统结构课后答案版全(清华大学袁春风主编)

5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000元,下表给出了P1和P2在M1和M2上所花的时间和指令条数。
程序
M1
M2
指令条数
执行时间(ms)
指令条数
执行时间(ms)
P1
200×106
10000
150×106
5000
P2
300×103
3
420×103
(3)[x]补=0.1010010x = +0.101001B
(4)[x]补=11010011x =–101101B =–45
7.假定一台32位字长的机器中带符号整数用补码表示,浮点数用IEEE 754标准表示,寄存器R1和R2的内容分别为R1:0000108BH,R2:8080108BH。不同指令对寄存器进行不同的操作,因而,不同指令执行时寄存器内容对应的真值不同。假定执行下列运算指令时,操作数为寄存器R1和R2的内容,则R1和R2中操作数的真值分别为多少?
–0:1000000000000000
6.已知[x]补,求x
(1)[x]补=1.1100111(2)[x]补=10000000
(3)[x]补=0.1010010(4)[x]补=11010011
参考答案:
(1)[x]补=1.1100111x =–0.0011001B
(2)[x]补=10000000x =–10000000B =–128
M1:4 N×0.8 = 3.2N (ns)
M2:2 N×1.2 = 2.4 N (ns)
所以,M2执行P的速度更快,每条指令平均快0.8ns,比M1快0.8/3.2×100%=25%。
8.假设某机器M的时钟频率为4GHz,用户程序P在M上的指令条数为8×109,其CPI为1.25,则P在M上的执行时间是多少?若在机器M上从程序P开始启动到执行结束所需的时间是4秒,则P占用的CPU时间的百分比是多少?

计算机组成和系统结构课后答案解析版全(清华大学出版社_袁春风主编)

计算机组成和系统结构课后答案解析版全(清华大学出版社_袁春风主编)

第 1 章习题答案5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000请回答下列问题:(1)对于P1,哪台机器的速度快?快多少?对于P2呢?(2)在M1上执行P1和P2的速度分别是多少MIPS?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?(3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少?(4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么?参考答案:(1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。

(2)对于M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。

对于M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。

从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。

(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。

故性价比R为:R=1/(执行时间×价格)R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。

因为10×5000 > 5×8000,所以,M2的性价比高。

计算机组成与系统结构课后答案版全(清华大学袁春风主编)

计算机组成与系统结构课后答案版全(清华大学袁春风主编)

5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000元,下表给出了P1和P2在M1和M2上所花的时间和指令条数。
程序
M1
M2
指令条数
执行时间(ms)
指令条数
执行时间(ms)
P1
200×106
10000
150×106
5000
P2
300×103
3
420×103
参考答案:
程序P在M上的执行时间为:1.25×8×109×1/4G = 2.5 s,从启动P执行开始到执行结束的总时间为4秒,其中2.5秒是P在CPU上真正的执行时间,其他时间可能执行操作系统程序或其他用户程序。
程序P占用的CPU时间的百分比为:2.5/4 = 62.5%。
9.假定某编译器对某段高级语言程序编译生成两种不同的指令序列S1和S2,在时钟频率为500MHz的机器M上运行,目标指令序列中用到的指令类型有A、B、C和D四类。四类指令在M上的CPI和两个指令序列所用的各类指令条数如下表所示。
参考答案:
显然,P’的执行时间为10秒,因此,P比P’多花了2秒钟,因此,执行时被换成左移指令的乘法指令的条数为1.2G×2/(5–2) = 800M。

3.实现下列各数的转换。
(1)(25.8125)10= (?)2= (?)8= (?)16
(2)(101101.011)2= (?)10= (?)8= (?)16= (?)8421
R=1/(执行时间×价格)
R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。
因为10×5000 > 5×8000,所以,M2的性价比高。应选择M2。

计算机组成与系统结构课后答案全(清华大学出版社 袁春风主编)

计算机组成与系统结构课后答案全(清华大学出版社 袁春风主编)

第 1 章习题答案5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000元,下表给出了P1和P2在M1和M2上所花的时间和指令条数。

请回答下列问题:(1)对于P1,哪台机器的速度快?快多少?对于P2呢?(2)在M1上执行P1和P2的速度分别是多少MIPS?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?(3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少?(4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么?参考答案:(1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。

(2)对于M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。

对于M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。

从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。

(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。

故性价比R为:R=1/(执行时间×价格)R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。

计算机组成与系统结构课后答案版全(清华大学出版社-袁春风主编)名师制作优质教学资料

计算机组成与系统结构课后答案版全(清华大学出版社-袁春风主编)名师制作优质教学资料

第 1 章习题答案5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000元,下表给出了P1和P2在M1和M2上所花的时间和指令条数。

请回答下列问题:(1)对于P1,哪台机器的速度快?快多少?对于P2呢?(2)在M1上执行P1和P2的速度分别是多少MIPS?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?(3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少?(4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么?参考答案:(1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。

(2)对于M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。

对于M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。

从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。

(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。

故性价比R为:R=1/(执行时间×价格)R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。

计算机组成原理第三章课后题参考答案.doc

计算机组成原理第三章课后题参考答案.doc

第三章课后习题参考答案1.有一个具有 20 位地址和 32 位字长的存储器,问:(1)该存储器能存储多少个字节的信息(2)如果存储器由 512K×8位 SRAM芯片组成,需要多少芯片(3)需要多少位地址作芯片选择解:( 1)∵ 2 20= 1M,∴该存储器能存储的信息为:1M×32/8=4MB (2)( 1024K/512K)×( 32/8 )= 8 (片)(3)需要 1 位地址作为芯片选择。

3.用 16K×8位的 DRAM芯片组成 64K×32 位存储器,要求:(1)画出该存储器的组成逻辑框图。

(2)设 DRAM芯片存储体结构为 128 行,每行为 128×8 个存储元。

如单元刷新间隔不超过 2ms,存储器读 / 写周期为μS, CPU 在 1μS内至少要访问一次。

试问采用哪种刷新方式比较合理两次刷新的最大时间间隔是多少对全部存储单元刷新一遍所需的实际刷新时间是多少解:( 1)组成 64K×32 位存储器需存储芯片数为N=(64K/16K)×( 32 位/8 位) =16(片)每 4 片组成 16K×32 位的存储区,有 A13-A0作为片内地址,用 A15 A14经 2:4 译码器产生片选信号,逻辑框图如下所示:( 2)根据已知条件, CPU 在期为,如果采用集中刷新,有1us 内至少访存一次,而整个存储器的平均读64us 的死时间,肯定不行;/ 写周所以采用分散式刷新方式:设 16K×8位存储芯片的阵列结构为 128 行× 128 列,按行刷新,刷新周期T=2ms,则分散式刷新的间隔时间为:t=2ms/128=(?s) 取存储周期的整数倍 ?s 的整数倍 )则两次刷新的最大时间间隔发生的示意图如下可见,两次刷新的最大时间间隔为 t MAXt MAX=× 2-= ( μ S)对全部存储单元刷新一遍所需时间为t Rt R=× 128=64 ( μS)4.有一个 1024K× 32 位的存储器,由128K× 8 位 DRAM芯片构成。

计算机组成与系统结构课后答案免费版全(清华大学出版社_袁春风主编)

计算机组成与系统结构课后答案免费版全(清华大学出版社_袁春风主编)

计算机组成与系统结构课后答案免费版全(清华大学出版社_袁春风主编)第 1 章习题答案5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000请回答下列问题:(1)对于P1,哪台机器的速度快?快多少?对于P2呢?(2)在M1上执行P1和P2的速度分别是多少MIPS?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?(3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少?(4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么?参考答案:(1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。

(2)对于M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。

对于M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。

从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。

(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。

故性价比R为:R=1/(执行时间×价格)R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。

《计算机组成原理》第三章课后题参考答案

《计算机组成原理》第三章课后题参考答案

第三章课后习题参考答案1.有一个具有20位地址和32位字长的存储器,问:(1)该存储器能存储多少个字节的信息?(2)如果存储器由512K×8位SRAM芯片组成,需要多少芯片?(3)需要多少位地址作芯片选择?解:(1)∵ 220= 1M,∴该存储器能存储的信息为:1M×32/8=4MB (2)(1024K/512K)×(32/8)= 8(片)(3)需要1位地址作为芯片选择。

3.用16K×8位的DRAM芯片组成64K×32位存储器,要求:(1) 画出该存储器的组成逻辑框图。

(2) 设DRAM芯片存储体结构为128行,每行为128×8个存储元。

如单元刷新间隔不超过2ms,存储器读/写周期为0.5μS, CPU在1μS内至少要访问一次。

试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?解:(1)组成64K×32位存储器需存储芯片数为N=(64K/16K)×(32位/8位)=16(片)每4片组成16K×32位的存储区,有A13-A0作为片内地址,用A15 A14经2:4译码器产生片选信号,逻辑框图如下所示:(2)根据已知条件,CPU在1us内至少访存一次,而整个存储器的平均读/写周期为0.5us,如果采用集中刷新,有64us的死时间,肯定不行;所以采用分散式刷新方式:设16K×8位存储芯片的阵列结构为128行×128列,按行刷新,刷新周期T=2ms,则分散式刷新的间隔时间为:t=2ms/128=15.6(s) 取存储周期的整数倍15.5s(0.5的整数倍)则两次刷新的最大时间间隔发生的示意图如下可见,两次刷新的最大时间间隔为tMAXt MAX=15.5×2-0.5=30.5 (μS)对全部存储单元刷新一遍所需时间为tRt R=0.5×128=64 (μS)4.有一个1024K×32位的存储器,由128K×8位DRAM芯片构成。

计算机组成原理 [袁春风]chap3homework

计算机组成原理 [袁春风]chap3homework
作业
思考题 (1) 习题2 习题6 习题7
1.
2. 作业题 要求做在本子上 (1) 习题3 (除第(4)小题以外) (2) 习题10 (3) 习题12 (4) 习题14 (5) 已知 x=2-011x 0.101100 y=2-101x(-0.011110) 求 [x+y]补 [x-y]补 [x+y]阶移尾补 [x-y]阶移尾补
1.
习题7(尾数用原码表示 采用0舍1入法进行舍入 请问在何种 情况下浮点运算需要规格化 如何规格化 ) 加减法 最多右规一次(1.xx…xx) 可能若干次左规 乘法 不需要右规 最多左规一次(0.01xx…x) 除法 不需要左规 最多右规一次(1.xx…xx)
2
南京大学计算机系 多媒体技术研究所 袁春风
减法功能可用加法器实现思考题181和182实现16位补码加减法器减数用各位取反末位加1习题6浮点补码加减法中明结果溢出不正确只有当阶码溢出时结果的尾数符号位为01或10时这种说法是否正确结果才溢出说习题7尾数用原码表示情况下浮点运算需要规格化加减法最多右规一次1xxxx可能若干次左规乘法不需要右规最多左规一次001xxx除法不需要左规最多右规一次1xxxx采用0舍1入法进行舍入如何规格化请问在何种南京大学计算机系多媒体技术研究所袁春风3作业解答1习题3除第4小题以外已知二进制数x01010y01101算并把结果还原成真值求xy补xy补参考答案x01010x补01010
注意点 (1) 若用书中的算法 则A 中为被除数(可用双符号) Q中为5位0 最后一步得到余数 (1)10111 商 10011 因为商为负数 故应加1 得商为10100 因为余数符号不同于被除数符号 所以应对余数进行修正 根 据被除数和除数符号的不同 知真正的余数为 10111+01101=00100 所以 商的补码为1.0100 其真值为-0.1100 余数的补码为0.0000 0100 其真值为0.0100X2-4

计算机组成与系统结构课后答案全(清华大学出版社 袁春风主编)

计算机组成与系统结构课后答案全(清华大学出版社 袁春风主编)

第 1 章习题答案5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000元,下表给出了P1和P2在M1和M2上所花的时间和指令条数。

请回答下列问题:(1)对于P1,哪台机器的速度快?快多少?对于P2呢?(2)在M1上执行P1和P2的速度分别是多少MIPS?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?(3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少?(4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么?参考答案:(1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。

(2)对于M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。

对于M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。

从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。

(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。

故性价比R为:R=1/(执行时间×价格)R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。

《数字逻辑与计算机组成》(袁春风主编)部分书后习题解答(1~3章)(202212)

《数字逻辑与计算机组成》(袁春风主编)部分书后习题解答(1~3章)(202212)

第1章3.解:(1) (25.8125)10 = (1 1001.1101)2= (31.64)8= (19.D)16(2)(101101.011)2 = (45.375)10 = (55.3)8= (2D.6)16= (0100 0101.0011 0111 0101)8421(3)(0101 1001 0110.0011)8421 = (596.3)10≈ (1001010100.010011)2=(254.4C)16(4)(4E.C)16 = (78.75)10=(100 1110.11)24.假定机器数为8位(1位符号,7位数值),写出下列各二进制数的原码和补码表示。

5.假定机器数为8位(1位符号,7位数值),写出下列各二进制数的补码和移码(偏置常数为128)。

6.已知补码求真值。

7.(R1)=0000108BH,(R2)=8080108BH(1)解:执行无符号整数加法指令时,两数均为无符号数,故:[R1]真值=108BH,[R2]真值=8080108BH(2)解:执行带符号整数乘法指令时,两数为带符号数,此值为补码,即:[R1]补=0000108BH,[R2]补=8080108BH=1000_0000_1000_0000_0001_0000_1000_1011B根据补码与真值的转换规则,可以求出真值:[R1]真值=+108BH,[R2]真值=-111_1111_0111_1111_1110_1111_0111_0101B=-7F7FEF75H(3)解:执行单精度浮点数减法指令时,两数为32位IEEE754格式的浮点数(书P19),按下述过程求真值:(a)将机器数展开成二进制形式(R1)=0000108BH=0000_0000_0000_0000_0001_0000_1000_1011B(R2)=8080108BH=1000_0000_1000_0000_0001_0000_1000_1011B(b)按32位IEEE754标准规定,写出符号位s,阶码e和尾数f的值对于R1:s=0,e=00000000,f=000_0000_0001_0000_1000_1011对于R2:s=1,e=00000001,f=000_0000_0001_0000_1000_1011(c)按32位IEEE754标准规定,真值的计算公式是:(−1)s⨯1.f⨯2e−127,据此可以求出真值:对于R1,由于s=0,阶码e=00000000,依据书P19-表1.2的解释,[R1]真值=0.f⨯2−126=−(0.000_0000_0001_0000_1000_1011)2⨯2−126对于R2,[R2]真值=(−1)s⨯1.f⨯2e−127=−(1.000_0000_0001_0000_1000_1011)2⨯2−1268.解:9.解:13.以IEEE754单精度浮点数格式表示下列十进制数。

计算机组成与系统结构课后答案全清华大学出版社袁春风主编之欧阳育创编

计算机组成与系统结构课后答案全清华大学出版社袁春风主编之欧阳育创编

第1 章习题答案5.若有两个基准测试法度P1和P2在机器M1和M2上运行,假定M1和M2的价格辨别是5000元和8000元,下表给出了P1和P2在M1和M2上所花的时间和指令条数。

请回答下列问题:(1)对P1,哪台机器的速度快?快几多?对P2呢?(2)在M1上执行P1和P2的速度辨别是几多MIPS?在M2上的执行速度又各是几多?从执行速度来看,对P2,哪台机器的速度快?快几多?(3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是几多?(4)如果某个用户需要年夜量使用法度P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要年夜批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进年夜批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么?参考谜底:(1)对P1,M2比M1快一倍;对P2,M1比M2快一倍。

(2)对M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。

对M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。

从执行速度来看,对P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。

(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。

故性价比R为:R=1/(执行时间×价格)R越年夜说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。

计算机组成与系统结构课后答案全(清华大学出版社袁春风主编).docx

计算机组成与系统结构课后答案全(清华大学出版社袁春风主编).docx

第1章习题答案5 .若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000请回答下列问题:(1)对于P1,哪台机器的速度快?快多少?对于P2呢?(2)在M1上执行P1和P2的速度分别是多少MlPS ?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?(3)假定M1和M2的时钟频率各是800MHZ和1.2GHZ,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少?(4)如果某个用户需要大量使用程序P1 ,并且该用户主要关心系统的响应时间而不是吞吐率,那么, 该用户需要大批购进机器时,应该选择M1还是M2 ?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2 ?为什么?参考答案:(1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。

(2)对于M1,P1 的速度为:200M∕10=20MIPS ;P2 为300k∕0.003=100MIPS。

对于M2,P1 的速度为:150M∕5=30MIPS ;P2 为420k∕0.006=70MIPS。

从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10疋00M∕(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5X1.2G/(150 ×06)=40°(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。

故性价比R为:R=1∕(执行时间×介格)R越大说明性价比越高,也即,执行时间×介格”的值越小,则性价比越高。

因为10×5000 > 5 ×000,所以,M2的性价比高。

计算机组成与系统结构课后答案全清华大学出版社袁春风主编

计算机组成与系统结构课后答案全清华大学出版社袁春风主编

第1章习题答案5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000元,下表给出了P1和P2在M1和M2上所花的时间和指令条数。

请回答下列问题:(1)对于P1,哪台机器的速度快?快多少?对于P2呢?(2)在M1上执行P1和P2的速度分别是多少MIPS?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?(3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少?(4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么?参考答案:(1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。

(2)对于M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。

对于M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。

从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。

(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。

故性价比R为:R=1/(执行时间×价格)R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
模式 机器数 无符号数 二进制补码 无符号数 二进制补码 无符号数 二进制补码 110 110 001 001 111 111 x 值 6 –2 1 +1 7 –1 机器数 010 010 111 111 111 111 y 值 2 +2 7 –1 7 –1 x×y(截断前) 机器数 001100 111100 000111 111111 110001 000001 值 12 –4 7 –1 49 +1 x×y(截断后) 机器数 100 100 111 111 001 001 值 4 –4 7 –1 1 +1
• 64 •
10100 10101 +0 0 1 1 0 11010 10101 10101 01011 +00110 11011 01011 10110 10111 +00110 11100 10111 11001 01111 +00110 11111 01111 11110 11111 +00110 00100 11110 +00000 + 1 00100 11111 所以,[X/Y] 补=11111,余数为 00100。
商的数值部分为:00001。所以,[X/Y]原=00001 (最高位为符号位),余数为 0100。 (5) 将 10 和–6 分别表示成补码形式为:[10] 余数寄存器 R 余数/商寄存器 Q 00000 01010 +11010 11010 01010
补 补
先对被除数进行符号扩展,[10] 补=00000 01010,[6] 补 = 0 0110 说 明 开始 R0 = [X] R1=[X] +[Y] R1 与[Y]同号,则 q5 =1
6.设 A4A1 和 B4B1 分别是四位加法器的两组输入,C0 为低位来的进位。当加法器分别采用串行进位和先 行进位时,写出四个进位 C4 C1 的逻辑表达式。 参考答案: 串行进位: C1 = X1C0+Y1C0 + X1 Y1 C2 = X2C1+Y2C1 + X2 Y2 C3 = X3C2+Y3C2 + X3 Y3 C4 = X4C3+Y4C3 + X4 Y4 并行进位: C1 = X1Y1 + (X1+Y1)C0 C2 = X2Y2 + (X2 +Y2) X1Y1 + (X2+Y2) (X1+Y1)C0 C3 = X3Y3 + (X3 + Y3) X2Y2 + (X3 + Y3) (X2 + Y2) X1Y1 + (X3 + Y3) (X2 + Y2)(X1 + Y1)C0 C4=X4Y4+(X4+Y4)X3Y3+(X4+Y4)(X3+Y3)X2Y2+(X4+Y4)(X3+Y3)(X2+Y2)X1Y1+(X4+Y4)(X3+Y3) (X2+Y2)(X1+Y1)C0 7.用 SN74181 和 SN74182 器件设计一个 16 位先行进位补码加/减运算器,画出运算器的逻辑框图,并给出 零标志、进位标志、溢出标志、符号标志的生成电路。 参考答案(图略) :
5.以下是两段 C 语言代码,函数 arith( )是直接用 C 语言写的,而 optarith( )是对 arith( )函数以某个确定的 M 和 N 编译生成的机器代码反编译生成的。 根据 optarith( ), 可以推断函数 arith( ) 中 M 和 N 的值各是 多少?
• 61 •
#define M #define N int arith (int x, int y) { int result = 0 ; result = x*M + y/N; return result; } int optarith ( int x, int y) { int t = x; x << = 4; x - = t; if ( y < 0 ) y += 3; y>>2; return x+y; 参考答案: 可以看出 x*M 和“int t = x; x << = 4; x-=t;”三句对应,这些语句实现了 x 乘 15 的功能(左移 4 位 相当于乘以 16,然后再减 1) ,因此,M 等于 15; y/N 与“if ( y < 0 ) y += 3; y>>2;”两句对应,功能主要由第二句“y 右移 2 位”实现,它实现了 y 除 以 4 的功能,因此 N 是 4。而第一句“if ( y < 0 ) y += 3;”主要用于对 y=–1 时进行调整,若不调整,则 –1>>2=–1 而–1/4=0,两者不等;调整后 –1+3=2,2>>2=0,两者相等。 思考:能否把 if ( y < 0 ) y += 3; 改成 if ( y < 0 ) y += 2; ? 不能!因为 y = - 4 时不正确。
• 62 •
逻辑框图参见教材中的图 3.15 和图 3.16,将两个图结合起来即可,也即只要将图 3.15 中的 B 输入端的每 一位 Bi 取反,得到 Bi,和原码 Bi 一起送到一个二路选择器,由进位 C0 作为选择控制信号。当 C0 为 1 时 做减法,此时,选择将 Bi 作为 SN74181 的 B 输入端;否则,当 C0 为 1 时,做加法。 零标志 ZF、进位标志 CF、溢出标志 OF、符号标志 SF 的逻辑电路根据以下逻辑表达式画出即可。 ZF=F15+F14+F13+F12+F11+F10+F9+F8+F7+F6+F5+F4+F3+F2+F1+F0 CF=C16 OF= C0(A15B15F15 + A15B15F15)+ C0(A15B15F15 + A15B15F15) SF= F15 8. 用 SN74181 和 SN74182 器件设计一个 32 位的 ALU,要求采用两级先行进位结构。 (1) 写出所需的 SN74181 和 SN74182 芯片数。 (2) 画出 32 位 ALU 的逻辑结构图。 参考答案(图略) : 将如图 3.15 所示的两个 16 位 ALU 级联起来即可, 级联时, 低 16 位 ALU 的高位进位 C16 作为高 16 位 ALU 的低位进位 C0,因此,只要用 8 片 SN74181 和 2 片 SN74182。 9.已知 x = 10,y = – 6,采用 6 位机器数表示。请按如下要求计算,并把结果还原成真值。 (1) 求[x+y]补,[x–y]补。 (2) 用原码一位乘法计算[x×y]原。 (3) 用 MBA(基 4 布斯)乘法计算[x×y]补。 (4) 用不恢复余数法计算[x/y]原的商和余数。 (5) 用不恢复余数法计算[x/y]补的商和余数。 参考答案: [10]补 = 001010 [–6]补 = 111010 [6]补 = 000110 [10]原 = 001010 [–6]原 = 100110 (1) [10+(– 6)]补= [10]补+[– 6]补= 001010+111010 = 000100 (+4) [10–(–6)]补= [10]补+[– (–6)]补 = 001010+000110 = 010000 (+16) (2) 先采用无符号数乘法计算 001010× 000110 的乘积,原码一位乘法过程(前面两个 0 省略)如下: C 0 0 0 0 0 0 0 0 0 P 0000 +0000 0000 0000 +1010 1010 0101 +1010 1111 0111 +0000 0111 0011 Y 0110 说明 P0 = 0 y4 = 0,+0 C, P 和 Y 同时右移一位 得 P1 y3 = 1,+X C, P 和 Y 同时右移一位 得 P2 y2 = 1,+X C, P 和 Y 同时右移一位 得 P3 y1 = 0,+0 C, P 和 Y 同时右移一位 得 P4
函数 func1 的功能是把无符号数高 24 位清零 (左移 24 位再逻辑右移 24 位) , 结果一定是正的有符号数; 而函数 func2 的功能是把无符号数的高 24 位都变成和第 25 位一样,因为左移 24 位后进行算术右移,高 24 位补符号位(即第 25 位) 。
4.填写下表,注意对比无符号数和带符号整数的乘法结果,以及截断操作前、后的结果。
0011
0001 0000 1000
1100
若两个 6 位数相乘的话,则还要右移两次,得 000000 111100 符号位为:0 1 = 1,因此,[X×Y]原 = 1000 0011 1100
• 63 •
即 X × Y = –11 1100B = – 60 (3) [–10]补 = 110110,布斯乘法过程如下: P 000000 000000 +110110 110110 111011 +001010 000101 000010 +110110 111000 111100 +000000 111100 111110 +000000 111110 111111 Y 111010 y-1 0 说明 设 y-1 = 0,[P0]补 = 0 y0 y-1 = 00,P、Y 直接右移一位 得[P1]补 y1 y0 =10,+[–X]补 P、Y 同时右移一位 得[P2]补 y2 y1 =01,+[X]补 P、Y 同时右移一位 得[P3]补 y3 y2 = 10,+[–X]补 P、Y 同时右移一位 得[P4]补 y4 y3 = 11,+0 P、Y 同时右移一位 得[P5]补 y5 y4 = 11,+0 P、Y 同时右移一位 得[P6]补
相关文档
最新文档