计算机组成原理(第2版)唐朔飞编著(转载请注明出处---https://www.cnblogs.com/qingl)
第一章
1.2. 如何理解计算机的层次结构?
答:
计算机硬件、系统软件和应用软件构成了计算机系统的三个层次结构。
(1)硬件系统是最内层的,它是整个计算机系统的基础和核心。
(2)系统软件在硬件之外,为用户提供一个基本操作界面。
(3)应用软件在最外层,为用户提供解决具体问题的应用系统界面。
通常将硬件系统之外的其余层称为虚拟机。各层次之间关系密切,上层是下层的扩展,下层是上层的基础,各层次的划分不是绝对的。
1.5. 冯•诺依曼计算机的特点是什么?
答:
l 计算机由运算器、控制器、存储器、输入设备、输出设备五大部件组成;
l 指令和数据以同等地位存放于存储器内,并可按地址访问;
l 指令和数据均用二进制表示;
l 指令由操作码、地址码两大部分组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置;
l 指令在存储器中顺序存放,通常自动顺序取出执行;
l 机器以运算器为中心(原始冯•诺依曼机)。
1.6. 画出计算机硬件组成框图,说明各部件的作用及计算机硬件的主要技术指标。
答:
计算机硬件组成框图如下:
各部件的作用如下:
控制器:控制、指挥程序和数据的输入、运行以及处理运算结果。
运算器:完成算术运算和逻辑运算,并将运算的中间结果暂时存在运算器内。
存储器:存放数据和程序。
输入设备:将人们熟悉的信息形式转换为机器能识别的信息形式。
输出设备:将机器运算结果转换为人们熟悉的信息形式。
计算机硬件的主要技术指标有:
机器字长:指CPU一次能处理数据的位数。
存储容量:指能存储信息的最大容量,通常以字节数来衡量。一般包含主存容量和辅存容量。
运算速度:现普遍采用单位时间内执行指令的平均条数来衡量。
1.8. 解释下列英文缩写的中文含义:
CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS
答:
CPU:Central Processing Unit,中央处理机(器),是计算机硬件的核心部件,主要由运算器和控制器组成。
PC:Program Counter,程序计数器,其功能是存放当前欲执行指令的地址,并可自动计数形成下一条指令地址。
IR:Instruction Register,指令寄存器,其功能是存放当前正在执行的指令。
CU:Control Unit,控制单元(部件),为控制器的核心部件,其功能是产生微操作命令序列。
ALU:Arithmetic Logic Unit,算术逻辑运算单元,为运算器的核心部件,其功能是进行算术、逻辑运算。
ACC:Accumulator,累加器,是运算器中既能存放运算前的操作数,又能存放运算结果的寄存器。
MQ:Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。
X:在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数;
MAR:Memory Address Register,存储器地址寄存器,在主存中用来存放欲访问的存储单元的地址。
MDR:Memory Data Register,存储器数据缓冲寄存器,在主存中用来存放从某单元读出、或要写入某存储单元的数据。
I/O:Input/Output Equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送。
MIPS:Million Instruction Per Second,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位。
CPI:Cycle Per Instruction,执行一条指令所需的时钟周期数。
FLOPS:Floating Point Operation Per Second,浮点运算次数每秒。
1.10. 指令和数据都存于存储器中,计算机如何区分它们?
答:
计算机区分指令和数据有以下2种方法:
l 通过不同的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。
l 通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。
第三章
3.1. 什么是总线?总线传输有何特点?为了减轻总线负载,总线上的部件应具备什么特点?
答:
总线是连接多个部件的信息传输线,是各部件共享的传输介质。
特点是:在某一时刻,只允许有一个部件向总线发送信息,而多个部件可以同时从总线上接收相同的信息。
为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路与总线连通。
3.4. 为什么要设置总线判优控制?常见的集中式总线控制有几种?各有何特点?哪种方式响应时间最快?哪种方式对电路故障最敏感?
答:
总线判优控制解决多个部件同时申请总线时的使用权分配问题;
常见的集中式总线控制有三种:链式查询、计数器定时查询、独立请求方式;
链式查询:连线简单,易于扩充,对电路故障最敏感;
计数器定时查询:优先级设置较灵活,对故障不敏感,但增加了控制线数,控制也较复杂;
独立请求方式:响应速度快,优先次序控制灵活,但控制线数量多,总线控制复杂。
3.6. 试比较同步通信和异步通信。
答:
同步通信:由统一时钟控制数据传送,控制方式简单,灵活性差,当系统中各部件工作速度差异较大时,总线工作效率明显下降。一般用于总线长度较短,各部件存取时间比较一致的场合。
异步通信:不由统一时钟控制数据传送,部件间采用应答方式进行联系,控制方式较同步复杂,灵活性高,适合在系统中各部件工作速度差异较大时采用。
3.8. 为什么说半同步通信同时保留了同步通信和异步通信的特点?
答:
半同步通信既能像同步通信那样由统一时钟控制,又能像异步通信那样允许传输时间不一致,因而工作效率也介于两者之间。
3.9. 分离式通讯有何特点,主要用于什么系统?
答:
特点:
(1)各模块欲占用总线使用权都必须提出申请;
(2)在得到总线使用权后,主模块在先定的时间内向对方传送信息,采用同步方式传送,不再等待对方的回答信号;
(3)各模块在准备数据的过程中都不占用总线,使总线可接受其它模块的请求;
(4)总线被占用时都在做有效工作,不存在空闲等待时间,充分利用了总线的占用,从而实现了总线在多个主、从模块间进行信息交叉重叠并行传送。
分离式通讯主要用于大型计算机系统。
3.10. 什么是总线标准?为什么要设置总线标准?你知道目前流行的总线标准有哪些?什么叫plug and play?哪些总线有这一特点?
答:
总线标准:系统与各模块,模块与模块之间的一个互联的标准界面。
主要为了解决不同厂家各类模块化产品的兼容问题;
目前流行的总线标准有:ISA、EISA、PCI等;
plug and play:即插即用,USB、PCI等具有此功能。
3.13. 什么是总线的数据传输速率,它与哪些因素有关?
答:
即总线带宽,指单位时间内总线上传输数据的位数,通常用每秒传输信息的字节数来衡量。
它与总线宽度和总线频率有关,总线宽度越宽,频率越快,数据传输率越高。
第四章
4.3. 存储器的层次结构主要体现在什么地方?为什么要分这些层次?计算机如何管理这些层次?
答:
存储器的层次结构主要体现在 缓存-主存 和 主存-辅存 这两个存储层次上。
缓存-主存 层次主要解决CPU和主存速度不匹配的问题。
主存-辅存 层次主要解决存储系统的容量问题。
综合上述两个存储层次的作用,从整个存储系统来看,就达到了速度快、容量大、位价低的优化效果。
主存与缓存之间的信息调度功能全部由硬件和操作系统自动完成。而主存与辅存层次的调度目前广泛采用虚拟存储技术实现。
4.4. 说明存取周期和存取时间的区别。
答:
存取周期:存储器进行连续两次独立的存储器操作所需的最小间隔时间。
存取时间:启动一次存储存储器操作到完成该操作所需的全部时间。
通常存储周期大于存取时间。
4.9. 什么叫刷新?为什么要刷新?说明刷新有几种方法。
答:
刷新:对动态RAM定期进行的信息全部重写过程;
刷新原因:某些存储单元长期得不到访问,其存储单元内的原信息会慢慢消失;
常用的刷新方法有三种:集中刷新、分散刷新、异步刷新。
集中刷新:在规定的一个刷新周期内,对全部存储单元集中一段时间逐行进行刷新,存在CPU访存“死区”。
分散刷新:对每行存储单元的刷新分散到每个存取周期内完成。
异步刷新:是前两种方式的结合,它既可缩短“死时间”,又充分利用最大刷新间隔为2 ms的特点。
4.25. 什么是“程序访问的局部性”?存储系统中哪一级采用了程序访问的局部性原理?
答:
CPU从主存取指令或取数据,在一定时间内,只是对主存局部地址区域的访问。
存储系统中 缓存-主存 层次和 主存-辅存 层次均采用了程序访问的局部性原理。
4.33.简要说明提高访存速度可采取的措施。
答:
(1)采用高速元件。例如采用高性能存储芯片。
(2)采用层次结构。
(3)调整主存结构。如采用单体多字系统或采用多体并行系统。
第五章
5.1. I/O设备有哪些编址方式?各有何特点?
答:
统一编址:占用了存储空间,减少了主存容量,但无须专用的I/O指令
不统一编址:不占用存储空间,故不影响主存容量,但需设I/O专用指令。
5.10. 什么是I/O接口,与端口有何区别?为什么要设置I/O接口?I/O接口如何分类?
答:
I/O接口通常是指主机与I/O设备之间设置的一个硬件电路及其相应的软件控制,而端口是指接口电路中的一些寄存器。
主机需要通过I/O 接口与外部设备进行数据交换。
按数据传送方式分类:并行接口和串行接口。
按功能选择的灵活性分类:可编程接口和不可编程接口。
按通用性分类:通用接口和专用接口。
按数据传送的控制方式分类:程序型接口和DMA型接口。
5.11简述I/O接口的功能和基本组成
答:
功能:
1) 选址功能
2) 传送命令的功能
3) 传送数据的功能
4) 反映I/O设备工作状态的功能
I/O接口的组成包括硬件电路和软件编程两部分。
5.14. 在什么条件下,I/O设备可以向CPU提出中断请求?
答:
若I/O设备未被屏蔽(MASK=0),且当I/O设备工作已完成时(D=1),则中断查询信号将INTR置“1”,表示I/O设备向CPU发出中断请求,该信号可送至排队器进行优先级判断。
5.16. 在什么条件和什么时间,CPU可以响应I/O的中断请求?
答:
当中断允许状态为1(EINT=1),且至少有一个中断请求被查到,则在一条指令执行完时,响应中断。
5.35. 试从5个方面比较程序中断方式和DMA方式的区别。
答:
1) 从数据传送看:程序中断方式靠程序传送,DMA方式靠硬件传送。
2) 从CPU响应时间看:程序中断方式是在一条指令执行结束时响应,而DMA方式可在指令周期内的任一存取周期结束时响应。
3) 程序中断方式有处理异常事件的能力,DMA方式则没有。
4) 程序中断方式需要中断现行程序,故需要保护现场;DMA方式不中断现行程序,无须保护现场。
5) DMA的优先级比程序中断方式的优先级高。
第六章
6.5. 已知[x]补,求[x]原和x。
[x1]补 = 1.1100; [x2]补 = 1.1001; [x3]补 = 0.1110; [x4]补 = 1.0000;
[x5]补 = 1,0101; [x6]补 = 1,1100; [x7]补 = 0,0111; [x8]补 = 1,0000;
解:
[x]补与[x]原、x的对应关系如下:
[x]补 |
1.1100 |
1.1001 |
0.1110 |
1.0000 |
1,0101 |
1,1100 |
0,0111 |
1,0000 |
[x]原 |
1.0100 |
1.0111 |
0.1110 |
无 |
1,1011 |
1,0100 |
0,0111 |
无 |
x |
-0.0100 |
-0.0111 |
0.1110 |
-1 |
-1011 |
-100 |
0,0111 |
-10000 |
6.10. 在整数定点机中,设机器数采用1位符号位,写出±0的原码、补码、反码和移码,得出什么结论?
解:
0的机器数形式如下:(假定机器数共8位,含1位符号位在内)
真值 |
原码 |
补码 |
反码 |
移码 |
+0 |
0 000 0000 |
0 000 0000 |
0 000 0000 |
1 000 0000 |
-0 |
1 000 0000 |
0 000 0000 |
1 111 1111 |
1 000 0000 |
结论:0的原码和反码分别有+0和-0两种形式,补码和移码只有一种形式,且补码和移码数值位相同,符号位相反。
6.15. 什么是机器零?若要求全0表示机器零,浮点数的阶码和尾数应采取什么机器数形式?
答:
机器零指机器数所表示的零的形式。
它与真值零的区别是:机器零在数轴上表示为“0”点及其附近的一段区域,即在计算机中小到机器数的精度达不到的数均视为“机器零”,而真零对应数轴上的一点(0点)。若要求用“全0”表示浮点机器零,则浮点数的阶码应用移码、尾数用补码表示。
第七章
7.21比较RISC和CISC
答:
与CISC机相比,RISC机的主要优点如下:
1) 充分利用VLSI芯片的面积
2) 提高计算机运算速度
3) 便于设计,可降低成本,提高可靠性
4) 有效支持高级语言程序
5) 简化了指令系统,指令数量少,但较难以兼容老机器
第八章
8.9 当遇到什么情况时流水线将受阻?举例说明。
答:
流水线受阻一般有三种情况:结构相关、数据相关和控制相关。
1) 结构相关是多条指令进入流水线后, 硬件资源满足不了指令重叠执行的要求时产生的。
2) 数据相关是指令在流水线中重叠执行时,当后继指令需要用到前面指令的执行结果时发生的。
3) 控制相关是当流水线遇到分支指令和其他改变PC值得指令时引起的。
第九章
9.3. 什么是指令周期、机器周期和时钟周期?三者有何关系?
答:
指令周期:取出并执行一条指令所需的全部时间;
机器周期:以访问一次存储器的时间定为基准时间,这个基准时间就是机器周期。
时钟周期:也称为振荡周期,定义为时钟脉冲的倒数。
指令周期通常用若干个机器周期表示,而机器周期又包含若干个时钟周期。
9.9. 试比较同步控制、异步控制和联合控制的区别。
答:
同步控制:任何一条指令或指令中任何一个微操作的执行都是事先确定的,并且都受统一基准时标的时序信号控制。
异步控制:不存在基准时标信号,没有固定的周期节拍和严格的时钟同步。
联合控制:同步控制和异步控制相结合就是联合控制方式。这种方式对各种不同指令的微操作实行大部分统一、小部分区别对待的方法。
第十章
10.17. 解释机器指令、微指令、微程序、毫微指令和毫微程序以及它们之间的对应关系。
答:
机器指令:由“0”,“1”代码组成,能被机器直接运行。
微指令:用来解释机器指令。
微程序:微指令的有序集合。一条机器指令的功能由一段微程序来实现。
毫微指令:用来解释微指令的。
毫微程序:用来解释微程序的。毫微程序由毫微指令组成。