计算机组成原理 第五版 习题答案
计算机组成原理 第五版 习题答案
第一章 .............................................................................................................................................. 1
第二章 .............................................................................................................................................. 3
第三章 ............................................................................................................................................ 14
第四章 ............................................................................................................................................ 19
第五章 ............................................................................................................................................ 21
第六章 ............................................................................................................................................ 27
第七章 ............................................................................................................................................ 31
第八章 ............................................................................................................................................ 34
第九章 ............................................................................................................................................ 36
1
计算机组成原理 第五版 习题答案
第一章
1. 模拟计算机的特点是数值由连续量来表示,运算过程也是连续的。数字计算机的主要特
点是按位运算,并且不连续地跳动计算。模拟计算机用电压表示数据,采用电压组合和
测量值的计算方式,盘上连线的控制方式,而数字计算机用数字
数字计数的计算方式,程序控制的控制方式。数字计算机与模拟计算机相比,精度高,
数据存储量大,逻辑判断能力强。
0 和 1 表示数据,采用
2. 数字计算机可分为专用计算机和通用计算机,是根据计算机的效率、速度、价格、运行
的经济性和适应性来划分的。
3. 科学计算、自动控制、测量和测试、信息处理、教育和卫生、家用电器、人工智能。
4. 主要设计思想是:采用存储程序的方式,编制好的程序和数据存放在同一存储器中,计
算机可以在无人干预的情况下自动完成逐条取出指令和执行指令的任务;在机器内部,
指令和数据均以二进制码表示 ,指令在存储器中按执行顺序存放。主要组成部分有:
算器、逻辑器、存储器、输入设备和输出设备。
5. 存储器所有存储单元的总数称为存储器的存储容量。每个存储单元都有编号,称为单元
地址。如果某字代表要处理的数据,称为数据字。如果某字为一条指令,称为指令字。
: 运
6. 计算机硬件可直接执行的每一个基本的算术运算或逻辑运算操作称为一条指令,
而解算
某一问题的一串指令序列,称为程序。
7. 取指周期中从内存读出的信息流是指令流,
而在执行器周期中从内存读出的信息流是数
据流。
8. 半导体存储器称为内存,存储容量更大的磁盘存储器和光盘存储器称为外存,内存和外
存共同用来保存二进制数据。 运算器和控制器合在一起称为中央处理器,
用来控制计算机及进行算术逻辑运算。适配器是外围设备与主机联系的桥梁,它的作用
相当于一个转换器,使主机和外围设备并行协调地工作。
简称 CPU ,它
9. 计算机的系统软件包括系统程序和应用程序。系统程序用来简化程序设计,简化使用方
法,提高计算机的使用效率,发挥和扩大计算机的功能用用途;应用程序是用户利用计
算机来解决某些问题而编制的程序。
10.
在早期的计算机中, 人们是直接用机器语言来编写程序的, 这种程序称为手编程序
或目的程序; 后来,为了编写程序方便和提高使用效率, 人们使用汇编语言来编写程序,
称为汇编程序;为了进一步实现程序自动化和便于程序交流,使不熟悉具体计算机的人
也能很方便地使用计算机, 人们又创造了算法语言, 用算法语言编写的程序称为源程序,
源程序通过编译系统产生编译程序,也可通过解释系统进行解释执行;随着计算机技术
的日益发展,人们又创造出操作系统;随着计算机在信息处理、情报检索及各种管理系
统中应用的发展,要求大量处理某些数据,建立和检索大量的表格,于是产生了数据库
管理系统。
11.
第一级是微程序设计级,这是一个实在的硬件级,它由机器硬件直接执行微指令;
第二级是一般机器级,也称为机器语言级,它由程序解释机器指令系统;第三级是操作
系统级,它由操作系统实现;第四级是汇编语言级,它给程序人员提供一种符号形式语
言,以减少程序编写的复杂性;第五级是高级语言级,它是面向用户的,为方便用户编
写应用程序而设置的。 用一系列的级来组成计算机的接口对于掌握计算机是如何组成的
提供了一种好的结构和体制, 而且用这种分级的观点来设计计算机对保证产生一个良好
的系统结构也是很有帮助的。
1
12.
因为任何操作可以由软件来实现, 也可以由硬件来实现; 任何指令的执行可以由硬
件完成,也可以由软件来完成。实现这种转化的媒介是软件与硬件的逻辑等价性。
计算机组成原理 第五版 习题答案
13.
计算机应用和应用计算机在概念上是不等价的。
计算机应用是计算机学科与其他
学科相结合的交叉学科, 是计算机学科的组成部分, 分 为数值计算和非数值应用两大领
域。 应用计算机是借助计算机为实现特定的信息系统功能的手段。
结构 中,应用计算机是多级计算机系统层次结构的最终目标,
层次。
在计算机系统的层次
是高级语言级之上的服务
2
计算机组成原理 第五版 习题答案
第二章
1.(1) 35 (- 100011)2
[ 35]原 10100011
[ 35]补 11011100
[ 35]反 11011101
( 2)
[127]原=01111111
[127]反=01111111
[127]补=01111111
(3) 127 (- 1111111)2
[ 127]原 11111111
[ 127]补 10000001
[ 127]反 10000000
(4) 1 (- 00000001)2
[ 1]原 10000001
[ 1]补 11111111
[ 1]反 11111110
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 任意即可
3
计算机组成原理 第五版 习题答案
[x] 补 = x = a 0. a1a2, a6
( 2) 若 x < 0, 则 x > -0.5
只需 -x < 0.5, -x > 0
[x] 补 = -x, [0.5] 补 = 01000000
即[-x] 补 < 01000000
a0 * a1 * a2
a6 1 01000000
a0 * a1 * a2
a6 00111111
a0 a1a2
a 6 11000000
即 a0a1 = 11, a2→a6 不全为 0 或至少有一个为 1(但不是“其余取 0”)3.字
长 32 位浮点数,阶码 8 位,用移码表示,尾数 23 位,用补码表示,基为 2
Es
E1→ E8
Ms
M 21
M 0
( 1) 最大的数的二进制表示
E = 11111111
Ms = 0, M = 11 , 1(全 1)
1 11111111 01111111111111111111111
( 2) 最小的二进制数
E = 11111111
Ms = 1, M = 00 , 0(全 0)
1 11111111 1000000000000000000000
( 3) 规格化范围
正最大
E = 11, 1, M = 11 , 1, Ms = 0
8 个
22 个
即: 22 1
7
(1 2 22 )
正最小
E = 00, 0, M = 100 , 0, Ms = 0
8 个
21 个
7
即: 2 2
1
2
负最大
E = 00, 0, M = 011 , 1, Ms = 1
8 个
21 个
(最接近 0 的负数)即: 2 2
7
1
(2
22
2
)
负最小
E = 11, 1, M = 00 , 0, Ms =1
8 个
22 个
7
即: 22 1
( 1)
规格化所表示的范围用集合表示为:
27
1
2 1
7
[ 2 2
, 2
2
(1
22
7
2
) ]
[ 2 1
( 1) , 2
7
2
(2 1 2 22 ) ]
4
计算机组成原理 第五版 习题答案
4.在 IEEE754 标准中,一个规格化的 32 位浮点数 x 的真值表示为:
( 1)s
X =
(1) 27/64=0.011011=1.1011 ×
2E 127
×( 1.M ) ×
2 2
E= -2+127 = 125= 0111 1101
最后表示为: 0 01111101 10110000000000000000000
S= 0
M= 1011 0000 0000 0000 0000 000
2 2
(2) -27/64=-0.011011=1.1011 ×
E= -2+127 = 125= 0111 1101
最后表示为: 1 01111101 10110000000000000000000
S= 1
M= 1011 0000 0000 0000 0000 000
5.( 1)用变形补码进行计算:
[x] 补
=00 11011 [y] 补=00 00011
[x] 补 =
[y] 补 =
[x+y] 补=
00 11011
+ 00 00011
00 11110
结果没有溢出, x+y=11110
(2) [x] 补 =00 11011 [y] 补=11 01011
[x] 补 =
[y] 补 =
[x+y] 补 =
00 11011
+ 11 01011
00 00110
结果没有溢出, x+y=00110
( 3) [x] 补 =11 01010 [y] 补 =11 111111
[x] 补 =
[y] 补 =
[x+y] 补 =
00 01010
+ 00 11111
11 01001
结果没有溢出, x+y=- 10111
6. [x-y] 补 =[x] 补+[-y] 补
( 1) [x] 补 =00 11011
[-y] 补 =00 11111
[x] 补 =
[-y] 补 =
[x-y] 补 =
00 11011
+ 00 11111
01 11010
结果有正溢出, x- y=11010
( 2) [x] 补 =00 10111
[-y] 补=11 00101
[x] 补 =
[-y] 补 =
[x-y] 补 =
00 10111
+ 11 00101
11 11100
结果没有溢出,x- y=- 00100
5
计算机组成原理 第五版 习题答案
( 3) [x] 补 =00 11011
[-y] 补 =00 10011
[x] 补 =
[-y] 补 =
[x-y] 补 =
00 11011
+ 00 10011
01 01110
结果有正溢出, x- y=10010
7.( 1) 用原码阵列乘法器:
[x] 原=0 11011 [y] 原 =1 11111
因符号位单独考虑, |x|=11011 |y|=11111
1
1
1
1
0
1
1
1
1
1
×)
——————————————————————————
1
1
0
1 1
1
1
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
0
1
0
0
0
1
0
1
[x ×y] 原=1 1101000101
用补码阵列乘法器:
[x] 补=0 11011 [y] 补 =1 00001
乘积符号位为: 1
|x|=11011 |y|=11111
1
×) 1
1
1
0
1
1
1
1
1
——————————————————————————
1
1
0
1 1
1
1
0
1
1
1
1
0
1
1
1
1
0
1
1
6
计算机组成原理 第五版 习题答案
1
1
0
1
1
1
1
0
1
0
0
0
1
0
1
[x ×y] 补 =1 0010111011
(2) 用原码阵列乘法器:
[x] 原=1 11111 [y] 原=1 11011
因符号位单独考虑, |x|=11111 |y|=11011
1
1
1
1
1
0
1
1
1
1
×)
——————————————————————————
1
1
1
1 1
1
1
1
1
1
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
0
0
0
1
0
1
[x ×y] 原=0 1101000101
用补码阵列乘法器:
[x] 补 =1 00001 [y] 补 =1 00101
乘积符号位为: 1
|x|=11111 |y|=11011
1
×) 1
1
1
1
0
1
1
1
1
——————————————————————————
1
1
1
1 1
1
1
1
1
1
0
0
0
0
0
1
1
1
1
1
7