计算机组成原理习题答案蒋本珊.docx
- 文档编号:8273318
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:41
- 大小:104.94KB
计算机组成原理习题答案蒋本珊.docx
《计算机组成原理习题答案蒋本珊.docx》由会员分享,可在线阅读,更多相关《计算机组成原理习题答案蒋本珊.docx(41页珍藏版)》请在冰豆网上搜索。
计算机组成原理习题答案蒋本珊
第一章
1.电子数字计算机和电子模拟计算机的区别在哪里?
解:
电子数字计算机中处理的信息是在时间上离散的数字量,运算的过程是不连续的;电子模拟计算机中处理的信息是连续变化的物理量,运算的过程是连续的。
2.冯·诺依曼计算机的特点是什么?
其中最主要的一点是什么?
解:
冯·诺依曼计算机的特点如下:
①计算机(指硬件)应由运算器、存储器、控制器、输入设备和输出设备五大基本部件组成;
②计算机内部采用二进制来表示指令和数据;
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作。
第③点是最主要的一点。
3.计算机的硬件是由哪些部件组成的?
它们各有哪些功能?
解:
计算机的硬件应由运算器、存储器、控制器、输入设备和输出设备五大基本部件组成。
它们各自的功能是:
①输入设备:
把人们编好的程序和原始数据送到计算机中去,并且将它们转换成计算机内部所能识别和接受的信息方式。
②输出设备:
将计算机的处理结果以人或其他设备所能接受的形式送出计算机。
③存储器:
用来存放程序和数据。
④运算器:
对信息进行处理和运算。
⑤控制器:
按照人们预先确定的操作步骤,控制整个计算机的各部件有条不紊地自动工作。
4.什么叫总线?
简述单总线结构的特点。
解:
总线是一组能为多个部件服务的公共信息传送线路,它能分时地发送与接收各部件的信息。
单总线结构即各大部件都连接在单一的一组总线上,这个总线被称为系统总线。
CPU与主存、CPU与外设之间可以直接进行信息交换,主存与外设、外设与外设之间也可以直接进行信息交换,而无须经过CPU的干预。
5.简单描述计算机的层次结构,说明各层次的主要特点。
解:
现代计算机系统是一个硬件与软件组成的综合体,可以把它看成是按功能划分的多级层次结构。
第0级为硬件组成的实体。
第1级是微程序级。
这级的机器语言是微指令集,程序员用微指令编写的微程序一般是直接由硬件执行的。
第2级是传统机器级。
这级的机器语言是该机的指令集,程序员用机器指令编写的程序可以由微程序进行解释。
第3级是操作系统级。
从操作系统的基本功能来看,一方面它要直接管理传统机器中的软硬件资源,另一方面它又是传统机器的延伸。
第4级是汇编语言级。
这级的机器语言是汇编语言,完成汇编语言翻译的程序叫做汇编程序。
第5级是高级语言级。
这级的机器语言就是各种高级语言,通常用编译程序来完成高级语言翻译的工作。
第6级是应用语言级。
这一级是为了使计算机满足某种用途而专门设计的,因此这一级语言就是各种面向问题的应用语言。
6.计算机系统的主要技术指标有哪些?
解:
计算机系统的主要技术指标有:
机器字长、数据通路宽度、主存容量和运算速度等。
机器字长是指参与运算的数的基本位数,它是由加法器、寄存器的位数决定的。
数据通路宽度是指数据总线一次所能并行传送信息的位数。
主存容量是指主存储器所能存储的全部信息量。
运算速度与机器的主频、执行什么样的操作、主存本身的速度等许多因素有关。
第二章
1.设机器数的字长8位(含1位符号位),分别写出下列各二进制数的原码、补码和
反码:
0,-0,0.1000,-0.1000,0.1111,-0.1111,1101,-1101。
3.已知下列数的原码表示,分别写出它们的补码表示:
[X1]原=0.10100,[X2]原=1.10111。
解:
[X1]补=0.10100,[X2]补=1.01001。
4.已知下列数的补码表示,分别写出它们的真值:
[X1]补=0.10100,[X2]补=1.10111。
解:
X1=0.10100,X2=-0.01001。
8.一个n位字长的二进制定点整数,其中1位为符号位,分别写出在补码和反码两
种情况下:
(1)模数; (2)最大的正数;
(3)最负的数; (4)符号位的权;
(5)-1的表示形式; (6)0的表示形式。
9.某机字长16位,问在下列几种情况下所能表示数值的范围:
(1)无符号整数;(2)用原码表示定点小数;
(3)用补码表示定点小数;(4)用原码表示定点整数;
(5)用补码表示定点整数。
10.某机字长32位,试分别写出无符号整数和带符号整数(补码)的表示范围(用十
进制数表示)。
11.某浮点数字长12位,其中阶符1位,阶码数值3位,数符1位,尾数数值7位,阶码以2为底,阶码和尾数均用补码表示。
它所能表示的最大正数是多少?
最小规格化正数是多少?
绝对值最大的负数是多少?
12.某浮点数字长16位,其中阶码部分6位(含1位阶符),移码表示,以2为底;尾
数部分10位(含1位数符,位于尾数最高位),补码表示,规格化。
分别写出下列各题的二
进制代码与十进制真值。
(1)非零最小正数;
(2)最大正数;
(3)绝对值最小负数;
(4)绝对值最大负数。
13.一浮点数,其阶码部分为p位,尾数部分为q位,各包含1位符号位,均用补码表
示;尾数基数r=2,该浮点数格式所能表示数的上限、下限及非零的最小正数是多少?
写
数据的机器层次表示出表达式。
14.若上题尾数基数r=16,按上述要求写出表达式。
15.某浮点数字长32位,格式如下。
其中阶码部分8位,以2为底,移码表示;尾数部分一共24位(含1位数符),补码表示。
现有一浮点代码为(8C5A3E00)16,试写出它所表示的十进制真值。
16.试将(-0.1101)2用IEEE短浮点数格式表示出来。
17.将下列十进制数转换为IEEE短浮点数:
18.将下列IEEE短浮点数转换为十进制数:
(1)11000000111100000000000000000000;
(2)00111111000100000000000000000000;
(3)01000011100110010000000000000000;
(4)01000000000000000000000000000000;
(5)01000001001000000000000000000000;
(6)00000000000000000000000000000000。
19.对下列ASCII码进行译码:
1001001,0100001,1100001,1110111
1000101,1010000,1010111,0100100
20.以下列形式表示(5382)10。
(1)8421码; (2)余3码;
(3)2421码; (4)二进制数。
21.填写下列代码的奇偶校验位,现设为奇校验:
10100001
00011001
01001110
解:
3个代码的校验位分别是0,0,1。
22.已知下面数据块约定:
横向校验、纵向校验均为奇校验,请指出至少有多少位出错。
23.求有效信息位为01101110的海明校验码。
24.设计算机准备传送的信息是:
1010110010001111,生成多项式是X5+X2+1,计算校验位,写出CRC码。
第三章
1.指令长度和机器字长有什么关系?
半字长指令、单字长指令、双字长指令分别表示什么意思?
解:
指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。
通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
2.零地址指令的操作数来自哪里?
一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?
各举一例说明。
解:
双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。
双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数预先存放在累加器中。
例如,前述零地址和一地址的加法指令。
3.某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。
若双操作数指令已有K种,无操作数指令已有L种,问单操作数指令最多可能有多少种?
上述三类指令各自允许的最大指令条数是多少?
4.设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配
方案,使该指令系统包含:
4条三地址指令,8条二地址指令,180条单地址指令。
5.指令格式同上题,能否构成:
三地址指令4条,单地址指令255条,零地址指令64条?
为什么?
6.指令中地址码的位数与直接访问的主存容量和最小寻址单位有什么关系?
解:
主存容量越大,所需的地址码位数就越长。
对于相同容量来说,最小寻址单位越小,地址码的位数就越长。
7.试比较间接寻址和寄存器间址。
解:
间接寻址方式的有效地址在主存中,操作数也在主存中;寄存器间址方式的有效地址在寄存器中,操作数在主存中。
所以间接寻址比较慢。
8.试比较基址寻址和变址寻址。
解:
基址寻址和变址寻址在形成有效地址时所用的算法是相同的,但是它们两者实际上是有区别的。
一般来说,变址寻址中变址寄存器提供修改量(可变的),而指令中提供基准值(固定的);基址寻址中基址寄存器提供基准值(固定的),而指令中提供位移量(可变的)。
这两种寻址方式应用的场合也不同,变址寻址是面向用户的,用于访问字符串、向量和数组等成批数据;而基址寻址面向系统,主要用于逻辑地址和物理地址的变换,用以解决程序在主存中的再定位和扩大寻址空间等问题。
在某些大型机中,基址寄存器只能由特权指令来管理,用户指令无权操作和修改。
9.某机字长为16位,主存容量为64K字,采用单字长单地址指令,共有50条指令。
若有直接寻址、间接寻址、变址寻址、相对寻址四种寻址方式,试设计其指令格式。
解:
操作码6位,寻址方式2位,地址码8位。
10.某机字长为16位,主存容量为64K字,指令格式为单字长单地址,共有64条指令。
试说明:
(1)若只采用直接寻址方式,指令能访问多少主存单元?
(2)为扩充指令的寻址范围,可采用直接/间接寻址方式,若只增加一位直接/间接标志,指令可寻址范围为多少?
指令直接寻址的范围为多少?
(3)采用页面寻址方式,若只增加一位Z/C(零页/现行页)标志,指令寻址范围为多少?
指令直接寻址范围为多少?
(4)采用(2)、(3)两种方式结合,指令的寻址范围为多少?
指令直接寻址范围为多少?
11.设某机字长32位,CPU有32个32位的通用寄存器,设计一个能容纳64种操作的单字长指令系统。
(1)如果是存储器间接寻址方式的寄存器-存储器型指令,能直接寻址的最大主存空间是多少?
(2)如果采用通用寄存器作为基址寄存器,能直接寻址的最大主存空间又是多少?
解:
因为计算机中共有64条指令,所以操作码占6位;32个通用寄存器,寄存器编号占5位;其余部分为地址码或标志位。
(1)如果是存储器间接寻址方式的寄存器-存储器型指令,操作码6位,寄存器编号5位,间址标志1位,地址码20位,直接寻址的最大主存空间是
字。
(2)如果采用通用寄存器作为基址寄存器,
,能直接寻址的最大主存空间是
字。
12.已知某小型机字长为16位,其双操作数指令的格式如下:
其中:
OP为操作码,R为通用寄存器地址。
试说明下列各种情况下能访问的最大主存区域有多少机器字?
(1)A为立即数。
(2)A为直接主存单元地址。
(3)A为间接地址(非多重间址)。
(4)A为变址寻址的形式地址,假定变址寄存器为R1(字长为16位)。
解:
(1)1个机器字。
(2)256个机器字。
(3)65536个机器字。
(4)65536个机器字。
13.计算下列4条指令的有效地址(指令长度为16位)。
(1)000000Q(2)100000Q(3)170710Q(4)012305Q
16.举例说明哪几种寻址方式除去取指令以外不访问存储器?
哪几种寻址方式除去取指令外只需访问一次存储器?
完成什么样的指令,包括取指令在内共访问4次存储器?
解:
除去取指令以外不访问存储器:
立即寻址,寄存器寻址。
除去取指令外只需访问一次存储器:
直接寻址,寄存器间接寻址,变址寻址,基址寻址,相对寻址,页面寻址。
二级间接寻址包括取指令在内共访问4次存储器。
17.设相对寻址的转移指令占两个字节,第一个字节是操作码,第二个字节是相对位移量,用补码表示。
假设当前转移指令第一字节所在的地址为2000H,且CPU每取一个字节便自动完成(PC)+1→PC的操作。
试问当执行JMP*+8和JMP*-9指令(倡为相对寻址特征)时,转移指令第二字节的内容各为多少?
转移的目的地址各是什么?
转移的目的地址分别为:
200AH,1FF9H。
20.什么叫主程序和子程序?
调用子程序时还可采用哪几种方法保存返回地址?
画图说明调用子程序的过程。
解:
主程序就是指通常的程序,而子程序是一组可以公用的指令序列,只要知道子程序的入口地址就能调用它。
保存返回地址的方法有多种:
(1)用子程序的第一个字单元存放返回地址。
转子指令把返回地址存放在子程序的第一个字单元中,子程序从第二个字单元开始执行。
返回时将第一个字单元地址作为间接地址,采用间址方式返回主程序。
(2)用寄存器存放返回地址。
转子指令先把返回地址放到某一个寄存器中,再由子程序将寄存器中的内容转移到另一个安全的地方。
(3)用堆栈保存返回地址。
调用子程序的过程如图3唱8所示,此时返回地址保存在堆栈中。
21.在某些计算机中,调用子程序的方法是这样实现的:
转子指令将返回地址存入子程序的第一个字单元,然后从第二个字单元开始执行子程序,请回答下列问题:
(1)为这种方法设计一条从子程序转到主程序的返回指令。
(2)在这种情况下,怎么在主、子程序间进行参数的传递?
(3)上述方法是否可用于子程序的嵌套?
(4)上述方法是否可用于子程序的递归(即某个子程序自己调用自己)?
(5)如果改用堆栈方法,是否可实现(4)所提出的问题?
解:
(1)返回指令通常为零地址指令。
返回地址保存在堆栈中,执行返回指令时自动从堆栈中弹出。
而目前返回地址是保存在子程序的第一个单元中,故此时返回指令不能再是零地址指令了,而应当是一地址指令。
如:
间接寻址可找到返回地址,然后无条件转移到返回的位置。
(2)在这种情况下,可利用寄存器或主存单元进行主、子程序间的参数传递。
(3)可以用于子程序的嵌套(多重转子)。
因为每个返回地址都放在调用的子程序的第一个单元中。
(4)不可以用于子程序的递归,因为当某个子程序自己调用自己时,子程序第一个单元的内容将被破坏。
(5)如果改用堆栈方法,可以实现子程序的递归,因堆栈具有后进先出的功能。
第四章
1.证明在全加器里,进位传递函数
。
解:
并行加法器中的每一个全加器都有一个从低位送来的进位和一个传送给较高位的进位。
进位表达式为
欲证明
,也就是要证明
用卡诺图法,图4-10(a)和4-10(b)分别是两个逻辑表达式的卡诺图。
两个卡诺图相同,两个逻辑表达式就相等,则进位传递函数的两种形式相等。
2.某加法器采用组内并行、组间并行的进位链,4位一组,写出进位信号C6的逻辑表达式。
3.设计一个9位先行进位加法器,每3位为一组,采用两级先行进位线路。
4.已知X和Y,试用它们的变形补码计算出X+Y,并指出结果是否溢出。
(1)X=0.11011,Y=0.11111
(2)X=0.11011,Y=-0.10101
(3)X=-0.10110,Y=-0.00001
(4)X=-0.11011,Y=0.11110
5.已知X和Y,试用它们的变形补码计算出X-Y,并指出结果是否溢出。
(1)X=0.11011,Y=-0.11111
(2)X=0.10111,Y=0.11011
(3)X=0.11011,Y=-0.10011
(4)X=-0.10110,Y=-0.00001
7.设下列数据长8位,包括1位符号位,采用补码表示,分别写出每个数据右移或左移2位之后的结果。
(1)0.1100100
(2)1.0011001
(3)1.1100110
(4)1.0000111
8.分别用原码乘法和补码乘法计算X×Y。
(1)X=0.11011,Y=-0.11111
(2)X=-0.11010,Y=-0.01110
(2)X×Y=0.0101101100,过程略。
9.根据补码两位乘法规则推导出补码3位乘法的规则。
解:
先根据补码1位乘法推出补码2位乘法规则,再根据补码2位乘法推出补码3
位乘法规则。
10.分别用原码和补码加减交替法计算X÷Y。
(1)X=0.10101,Y=0.11011
(2)X=-0.10101,Y=0.11011
(3)X=0.10001,Y=-0.10110
(4)X=-0.10110,Y=-0.11011
11.设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列各题:
12.设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列各题:
13.用流程图描述浮点除法运算的算法步骤。
14.设计一个1位5421码加法器。
解:
设1位被加数为A4A3A2A1,加数为B4B3B2B1。
5421码的校正关系如表4-4所示。
第五章
1.如何区别存储器和寄存器?
两者是一回事的说法对吗?
解:
存储器和寄存器不是一回事。
存储器在CPU的外边,专门用来存放程序和数据,访问存储器的速度较慢。
寄存器属于CPU的一部分,访问寄存器的速度很快。
2.存储器的主要功能是什么?
为什么要把存储系统分成若干个不同层次?
主要有哪些层次?
解:
存储器的主要功能是用来保存程序和数据。
存储系统是由几个容量、速度和价格各不相同的存储器用硬件、软件、硬件与软件相结合的方法连接起来的系统。
把存储系统分成若干个不同层次的目的是为了解决存储容量、存取速度和价格之间的矛盾。
由高速缓冲存储器、主存储器、辅助存储器构成的三级存储系统可以分为两个层次,其中高速缓存和主存间称为Cache-主存存储层次(Cache存储系统);主存和辅存间称为主存—辅存存储层次(虚拟存储系统)。
3.什么是半导体存储器?
它有什么特点?
解:
采用半导体器件制造的存储器,主要有MOS型存储器和双极型存储器两大类。
半导体存储器具有容量大、速度快、体积小、可靠性高等特点。
半导体随机存储器存储的信息会因为断电而丢失。
4.SRAM记忆单元电路的工作原理是什么?
它和DRAM记忆单元电路相比有何异同点?
解:
SRAM记忆单元由6个MOS管组成,利用双稳态触发器来存储信息,可以对其进行读或写,只要电源不断电,信息将可保留。
DRAM记忆单元可以由4个和单个MOS管组成,利用栅极电容存储信息,需要定时刷新。
5.动态RAM为什么要刷新?
一般有几种刷新方式?
各有什么优缺点?
解:
DRAM记忆单元是通过栅极电容上存储的电荷来暂存信息的,由于电容上的电荷会随着时间的推移被逐渐泄放掉,因此每隔一定的时间必须向栅极电容补充一次电荷,这个过程就叫做刷新。
常见的刷新方式有集中式、分散式和异步式3种。
集中方式的特点是读写操作时不受刷新工作的影响,系统的存取速度比较高;但有死区,而且存储容量越大,死区就越长。
分散方式的特点是没有死区;但它加长了系统的存取周期,降低了整机的速度,且刷新过于频繁,没有充分利用所允许的最大刷新间隔。
异步方式虽然也有死区,但比集中方式的死区小得多,而且减少了刷新次数,是比较实用的一种刷新方式。
6.一般存储芯片都设有片选端
,它有什么用途?
解:
片选线
用来决定该芯片是否被选中。
=0,芯片被选中;
=1,芯片不选中。
7.DRAM芯片和SRAM芯片通常有何不同?
解:
主要区别有:
①DRAM记忆单元是利用栅极电容存储信息;SRAM记忆单元利用双稳态触发器来存储信息。
②DRAM集成度高,功耗小,但存取速度慢,一般用来组成大容量主存系统;SRAM的存取速度快,但集成度低,功耗也较大,所以一般用来组成高速缓冲存储器和小容量主存系统。
③SRAM芯片需要有片选端
,DRAM芯片可以不设
,而用行选通信号
、列选通
兼作片选信号。
④SRAM芯片的地址线直接与容量相关,而DRAM芯片常采用了地址复用技术,以减少地址线的数量。
8.有哪几种只读存储器?
它们各自有何特点?
解:
MROM:
可靠性高,集成度高,形成批量之后价格便宜,但用户对制造厂的依赖性过大,灵活性差。
PROM:
允许用户利用专门的设备(编程器)写入自己的程序,但一旦写入后,其内容将无法改变。
写入都是不可逆的,所以只能进行一次性写入。
EPROM:
不仅可以由用户利用编程器写入信息,而且可以对其内容进行多次改写。
EPROM又可分为两种:
紫外线擦除(UVEPROM)和电擦除(EEPROM)。
闪速存储器:
既可在不加电的情况下长期保存信息,又能在线进行快速擦除与重写,兼备了EEPROM和RAM的优点。
9.说明存取周期和存取时间的区别。
解:
存取周期是指主存进行一次完整的读写操作所需的全部时间,即连续两次访问存储器操作之间所需要的最短时间。
存取时间是指从启动一次存储器操作到完成该操作所经历的时间。
存取周期一定大于存取时间。
10.一个1K×8的存储芯片需要多少根地址线、数据输入线和输出线?
解:
需要10根地址线,8根数据输入和输出线。
11.某机字长为32位,其存储容量是64KB,按字编址的寻址范围是多少?
若主存以字节编址,试画出主存字地址和字节地址的分配情况。
解:
某机字长为32位,其存储容量是64KB,按字编址的寻址范围是16KW。
若主存以字节编址,每一个存储字包含4个单独编址的存储字节。
假设采用大端方案,即字地址等于最高有效字节地址,且字地址总是等于4的整数倍,正好用地址码的最末两位来区分同一个字中的4个字节。
主存字地址和字节地址的分配情况如图5-19所示。
12.一个容量为16K×32位的存储器,其地址线和数据线的总和是多少?
当选用下列不同规格的存储芯片时,各需要多少片?
1K×4位,2K×8位,4K×4位,16K×1位,4K×8位,8K×8位。
解:
地址线14根,数据线32根,共46根。
若选用不同规格的存储芯片,则需要:
1K×4位芯片128片,2K×8位芯片32片,4K×4位芯片
32片,16K×1位芯片32片,4K×8位芯片16片,8K×8位芯片8片。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 习题 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)