计算机组成原理第二版蒋本珊编 课后习题答案.docx
《计算机组成原理第二版蒋本珊编 课后习题答案.docx》由会员分享,可在线阅读,更多相关《计算机组成原理第二版蒋本珊编 课后习题答案.docx(51页珍藏版)》请在冰豆网上搜索。
计算机组成原理第二版蒋本珊编课后习题答案
计算机组成原理(第二版)蒋本珊编课后习题答案
第一章
1.电子数字计算机和电子模拟计算机的区别在哪里
解电子数字计算机中处理的信息是在时间上离散的数字量运算的过程是不连续
的电子模拟计算机中处理的信息是连续变化的物理量运算的过程是连续的
2.冯诺依曼计算机的特点是什么其中最主要的一点是什么
解冯诺依曼计算机的特点如下
①计算机指硬件应由运算器存储器控制器输入设备和输出设备五大基本部件
组成
②计算机内部采用二进制来表示指令和数据
③将编好的程序和原始数据事先存入存储器中然后再启动计算机工作
第③点是最主要的一点
3.计算机的硬件是由哪些部件组成的它们各有哪些功能
解计算机的硬件应由运算器存储器控制器输入设备和输出设备五大基本部件
组成它们各自的功能是
①输入设备把人们编好的程序和原始数据送到计算机中去并且将它们转换成计
算机内部所能识别和接受的信息方式
②输出设备将计算机的处理结果以人或其他设备所能接受的形式送出计算机
③存储器用来存放程序和数据
④运算器对信息进行处理和运算
⑤控制器按照人们预先确定的操作步骤控制整个计算机的各部件有条不紊地自
动工作
4.什么叫总线简述单总线结构的特点
解总线是一组能为多个部件服务的公共信息传送线路它能分时地发送与接收各
部件的信息单总线结构即各大部件都连接在单一的一组总线上这个总线被称为系统
总线CPU与主存CPU与外设之间可以直接进行信息交换主存与外设外设与外设
之间也可以直接进行信息交换而无须经过CPU的干预
5.简单描述计算机的层次结构说明各层次的主要特点
解现代计算机系统是一个硬件与软件组成的综合体可以把它看成是按功能划分
的多级层次结构
第0级为硬件组成的实体
第1级是微程序级这级的机器语言是微指令集程序员用微指令编写的微程序一
般是直接由硬件执行的
第2级是传统机器级这级的机器语言是该机的指令集程序员用机器指令编写的
程序可以由微程序进行解释
第3级是操作系统级从操作系统的基本功能来看一方面它要直接管理传统机器
中的软硬件资源另一方面它又是传统机器的延伸
第4级是汇编语言级这级的机器语言是汇编语言完成汇编语言翻译的程序叫做
汇编程序
第5级是高级语言级这级的机器语言就是各种高级语言通常用编译程序来完成
高级语言翻译的工作
第6级是应用语言级这一级是为了使计算机满足某种用途而专门设计的因此这
一级语言就是各种面向问题的应用语言
6.计算机系统的主要技术指标有哪些
解计算机系统的主要技术指标有机器字长数据通路宽度主存容量和运算速
度等
机器字长是指参与运算的数的基本位数它是由加法器寄存器的位数决定的
数据通路宽度是指数据总线一次所能并行传送信息的位数
主存容量是指主存储器所能存储的全部信息量
运算速度与机器的主频执行什么样的操作主存本身的速度等许多因素有关__
第二章
1.设机器数的字长8位含1位符号位分别写出下列各二进制数的原码补码和
反码0-00.1000-0.10000.1111-0.11111101-1101
解
真 值原 码补 码反 码
0
-0
0.1000
-0.1000
0.1111
-0.1111
1101
-1101
00000000
10000000
0.10000001.1000000
0.1111000
1.1111000
00001101
10001101
00000000
00000000
0.10000001.1000000
0.1111000
1.0001000
00001101
11110011
00000000
11111111
0.10000001.0111111
0.1111000
1.0000111
00001101
11110010
2.写出下列各数的原码补码和反码7
164
161
16±0-1
16-4
16-7
16
解7
16=7×2-4=0.0111
4
16=4×2-4=0.0100
1
16=1×2-4=0.0001
数据的机器层次表示
真 值原 码补 码反 码
7160.01110.01110.01114160.01000.01000.01001160.00010.00010.000100.00000.00000.0000-01.00000.00001.1111-1161.00011.11111.1110-4161.01001.11001.1011-7161.01111.10011.1000 3.已知下列数的原码表示分别写出它们的补码表示〔X1〕原=0.10100〔X2〕原=1.10111
解〔X1〕补=0.10100〔X2〕补=1.01001
4.已知下列数的补码表示分别写出它们的真值〔X1〕补=0.10100〔X2〕补=
1.10111
解X1=0.10100X2=-0.01001
5.设一个二进制小数X≥0表示成X=0.a1a2a3a4a5a6其中a1~a6取1或0
1若要X>12
a1~a6要满足什么条件
2若要X≥18
a1~a6要满足什么条件
3若要
14
≥X>1
16a1~a6要满足什么条件
解1X>12
的代码为0.100001~0.111111
a1=1a2+a3+a4+a5+a6=1
2X≥18
的代码为
0.001000 18
0.111111 63
64
a1+a2=0a3=1或a1=0a2=1或a1=1
计算机组成原理教师用书
3 4314
≥X>1
16的代码为
0.000101 5
64
0.010000 14
a1+a2+a3=0a4=1a5+a6=1或a1+a2=0a3=1或a2=1a1+a3+a4+a5+
a6=0
6.设〔X〕原=1.a1a2a3a4a5a6
1若要X>-12
a1~a6要满足什么条件
2若要-18
≥X≥-14
a1~a6要满足什么条件
解1X>-12
的代码为
1.000001 -1
64
1.011111 -31
64
a1=0a2+a3+a4+a5+a6=1
2-18
≥X≥-14
的代码为
1.001000 -18
1.001001 -9
64
1.001111 -15
64
1.010000 -14
a1+a2=0a3=1或a2=1a1+a3+a4+a5+a6=0
7.若上题中〔X〕原改为〔X〕补结果如何
解设〔X〕补=1.a1a2a3a4a5a6
1X>-12
的代码为
3 51.100001 -31
64
1.111111 -1
64
a1=1a2+a3+a4+a5+a6=1
2-18
≥X≥-14
的代码为
1.110000 -14
1.110001 -15
64
1.110111 -9
64
1.111000 -18
a1a2=1a3=0或a1a2a3=1a4+a5+a6=0
8.一个n位字长的二进制定点整数其中1位为符号位分别写出在补码和反码两
种情况下
1模数 2最大的正数
3最负的数 4符号位的权
5-1的表示形式 60的表示形式
解
项目补码反码
模数Mod2nMod2n-1
最大的正数2n-1-12n-1-1最负的数-2n-1-2n-1-1
符号位的权2n-12n-1
-1的表示形式11111111111111100的表示形式0000000000000000
11111111 9.某机字长16位问在下列几种情况下所能表示数值的范围
计算机组成原理教师用书
3 61无符号整数
2用原码表示定点小数
3用补码表示定点小数
4用原码表示定点整数
5用补码表示定点整数
解10≤X≤216-1
2-1-2-15≤X≤1-2-15
3-1≤X≤1-2-15
4-215-1≤X≤215-1
5-215≤X≤215-1
10.某机字长32位试分别写出无符号整数和带符号整数补码的表示范围用十
进制数表示
解无符号整数0≤X≤232-1
补码-231≤X≤231-1
11.某浮点数字长12位其中阶符1位阶码数值3位数符1位尾数数值7位阶
码以2为底阶码和尾数均用补码表示它所能表示的最大正数是多少最小规格化正
数是多少绝对值最大的负数是多少
解最大正数=1-2-7×223-1=1-2-7×27=127
最小规格化正数=2-1×2-23=2-1×2-8=2-9=1
512
绝对值最大的负数=-1×223-1=-1×27=-128
12.某浮点数字长16位其中阶码部分6位含1位阶符移码表示以2为底尾
数部分10位含1位数符位于尾数最高位补码表示规格化分别写出下列各题的二
进制代码与十进制真值
1非零最小正数
2最大正数
3绝对值最小负数
4绝对值最大负数
解1非零最小正数00000001000000002-1×2-25=2-33
2最大正数11111101111111111-2-9×225-1=1-2-9×231
3绝对值最小负数0000001011111111-2-1+2-9×2-25
4绝对值最大负数1111111000000000-1×225-1=-231
13.一浮点数其阶码部分为p位尾数部分为q位各包含1位符号位均用补码表
示尾数基数r=2该浮点数格式所能表示数的上限下限及非零的最小正数是多少写
数据的机器层次表示
第2
章
3 7出表达式
解上限最大正数=1-2-q-1×22p-1-1
下限绝对值最大负数=-1×22p-1-1
最小正数=2-q-1×2-2p-1
最小规格化正数=2-1×2-2p-1
14.若上题尾数基数r=16按上述要求写出表达式
解上限最大正数=1-2-q-1×162p-1-1
下限绝对值最大负数=-1×162p-1-1
最小正数=2-q-1×16-2p-1
最小规格化正数=16-1×16-2p-1
15.某浮点数字长32位格式如下其中阶码部分8位以2为底移码表示尾数
部分一共24位含1位数符补码表示现有一浮点代码为8C5A3E00__________16试写出它所
表示的十进制真值
0 7 8 9 3
阶码数符尾数
解8C5A3E0016=10001100010110100011111000000000B
0.10110100011111×212=101101000111.112=2887.7510
16.试将-0.11012用IEEE短浮点数格式表示出来
解0.1101=1.101×2-1
符号位=1
阶码=127-1=126
10111111010100000000000000000000
结果=BF500000H
17.将下列十进制数转换为IEEE短浮点数
128.75
2624
3-0.625
4+0.0
5-1000.5
解128.75=11100.11=1.110011×24
符号位=0
阶码=127+4=131
01000001111001100000000000000000
计算机组成原理教师用书
3 8结果=41E60000H
2624=1001110000=1.001110000×29
符号位=0
阶码=127+9=136
01000100000111000000000000000000
结果=441C0000H
3-0.625=-0.101=-1.01×2-1
符号位=1
阶码=127-1=126
10111111001000000000000000000000
结果=BF200000H
4+0.0
结果=00000000H
5-1000.5=1111101000.1=1.1111010001×29
符号位=1
阶码=127+9=136
11000100011110100010000000000000
结果=C47A2000H
18.将下列IEEE短浮点数转换为十进制数
111000000111100000000000000000000
200111111000100000000000000000000
301000011100110010000000000000000
401000000000000000000000000000000
501000001001000000000000000000000
600000000000000000000000000000000
解111000000111100000000000000000000
符号位=1
阶码=129-127=2
1.111×22=111.1B=7.5
所以结果=-7.5
200111111000100000000000000000000
符号位=0
阶码=126-127=-1
1.001×2-1=0.1001B=0.5625
数据的机器层次表示
第2
章
3 9所以结果=0.5625
301000011100110010000000000000000
符号位=0
阶码=135-127=8
1.0011001×28=100110010B=306
所以结果=306
401000000000000000000000000000000
符号位=0
阶码=128-127=1
1.0×21=10B=2
所以结果=2
501000001001000000000000000000000
符号位=0
阶码=130-127=3
1.01×23=1010B=10
所以结果=10
600000000000000000000000000000000
阶码和尾数都等于全0结果=0
19.对下列ASCII码进行译码
1001001010000111000011110111
1000101101000010101110100100
解以上ASCII码分别为IawEPW$
20.以下列形式表示538210
18421码 2余3码
32421码 4二进制数
解10101001110000010
21000011010110101
31011001111100010
41010100000110
21.填写下列代码的奇偶校验位现设为奇校验
10100001
00011001
01001110
解3个代码的校验位分别是001
计算机组成原理教师用书
4 022.已知下面数据块约定横向校验纵向校验均为奇校验请指出至少有多少位
出错
a7a6a5a4a3a2a1a0校验位
10011011→0
00110101→1
11010000→0
11100000→0
01001111→0
↓↓↓↓↓↓↓↓
校验位10101111
解经检测a7和a0列出错所以至少有两位出错
23.求有效信息位为01101110的海明校验码
解P5 D8 D7 D6 D5 P4 D4 D3 D2 P3 D1 P2 P1
P1=D1?
?
D2?
?
D4?
?
D5?
?
D7=0?
?
1?
?
1?
?
0?
?
1=1
P2=D1?
?
D3?
?
D4?
?
D6?
?
D7=0?
?
1?
?
1?
?
1?
?
1=0
P3=D2?
?
D3?
?
D4?
?
D8=1?
?
1?
?
1?
?
0=1
P4=D5?
?
D6?
?
D7?
?
D8=0?
?
1?
?
1?
?
0=0
P5=D1?
?
D2?
?
D3?
?
D5?
?
D6?
?
D8=0?
?
1?
?
1?
?
0?
?
1?
?
0=1
所以海明校验码=1XXXXXXXXXX01
24.设计算机准备传送的信息是1010110010001111生成多项式是X5+X2+1计
算校验位写出CRC码
解生成多项式X5+X2+1=100101
首先将准备传送的信息左移5位101011001000111100000
然后101011001000111100000÷100101余数=10011
所以CRC码=101011001000111110011__
3.4 教材习题解答
1.指令长度和机器字长有什么关系半字长指令单字长指令双字长指令分别表
示什么意思
解指令长度与机器字长没有固定的关系指令长度可以等于机器字长也可以大于
或小于机器字长通常把指令长度等于机器字长的指令称为单字长指令指令长度等于
半个机器字长的指令称为半字长指令指令长度等于两个机器字长的指令称为双字长
指令
2.零地址指令的操作数来自哪里一地址指令中另一个操作数的地址通常可采用
什么寻址方式获得各举一例说明
解双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶双操作数的一地址
指令的另一个操作数通常可采用隐含寻址方式获得即将另一操作数预先存放在累加器
中例如前述零地址和一地址的加法指令
3.某机为定长指令字结构指令长度16位每个操作数的地址码长6位指令分为
无操作数单操作数和双操作数三类若双操作数指令已有K种无操作数指令已有L
种问单操作数指令最多可能有多少种上述三类指令各自允许的最大指令条数是多少
指令系统
第3
章
6 5解X=24-K×26-jL
26k
双操作数指令的最大指令数24-1
单操作数指令的最大指令数15×26-1假设双操作数指令仅1条为无操作数指
令留出1个扩展窗口
无操作数指令的最大指令数216-212-26其中212为表示某条二地址指令占用的
编码数26为表示某条单地址指令占用的编码数此时双操作数和单操作数指令各仅有
1条
4.设某机为定长指令字结构指令长度12位每个地址码占3位试提出一种分配
方案使该指令系统包含4条三地址指令8条二地址指令180条单地址指令
解4条三地址指令
000XXXYYYZZZ
011XXXYYYZZZ
8条二地址指令
100000XXXYYY
100111XXXYYY
180条单地址指令
101000000XXX
111110011XXX
5.指令格式同上题能否构成
三地址指令4条单地址指令255条零地址指令64条为什么
解三地址指令4条
000XXXYYYZZZ
011XXXYYYZZZ
单地址指令255条
100000000XXX
111111110YYY
只能再扩展出零地址指令8条所以不能构成这样的指令系统
6.指令中地址码的位数与直接访问的主存容量和最小寻址单位有什么关系
计算机组成原理教师用书
6 6解主存容量越大所需的地址码位数就越长对于相同容量来说最小寻址单位越
小地址码的位数就越长
7.试比较间接寻址和寄存器间址
解间接寻址方式的有效地址在主存中操作数也在主存中寄存器间址方式的有效
地址在寄存器中操作数在主存中所以间接寻址比较慢
8.试比较基址寻址和变址寻址
解基址寻址和变址寻址在形成有效地址时所用的算法是相同的但是它们两者实
际上是有区别的一般来说变址寻址中变址寄存器提供修改量可变的而指令中提供
基准值固定的基址寻址中基址寄存器提供基准值固定的而指令中提供位移量可
变的这两种寻址方式应用的场合也不同变址寻址是面向用户的用于访问字符串向
量和数组等成批数据而基址寻址面向系统主要用于逻辑地址和物理地址的变换用以
解决程序在主存中的再定位和扩大寻址空间等问题在某些大型机中基址寄存器只能
由特权指令来管理用户指令无权操作和修改
9.某机字长为16位主存容量为64K字采用单字长单地址指令共有50条指令
若有直接寻址间接寻址变址寻址相对寻址四种寻址方式试设计其指令格式
解操作码6位寻址方式2位地址码8位
10.某机字长为16位主存容量为64K字指令格式为单字长单地址共有6