资讯详情

计算机组成原理复习题

第一章

第二章 机器级数据表示

第三章 操作方法和部件

第四章 指令系统

第五章

第六章

第七章

第八章


第一章

1.2 主要内容总结

1.冯诺依曼计算机结构的主要特点

  1. 由运算器、控制器、存储器、输入设备和输出设备组成。
  2. 二进制表示指令和数据。
  3. 按地址访问存储器中的指令和数据。
  4. 指令由操作码和地址码组成,操作码指定操作性质,地址码指定操作数。
  5. 工作采用存储程序。

8.各种性能参数之间的关系

时钟周期和时钟频率相互倒数。CPU执行时间为CPU时钟周期数×时钟周期。CPU时钟周期数程序中包含的指令条数×程序的CPI”

1.3 解释基本术语

软件兼容性:指某档机型上开发的软件可以在其他机型上正确运行,无需修改。

指令集:计算机可执行的所有机器指令集。

1.4 回答常见问题

衡量计算机系统性能的主要指标是什么?

计算机的质量主要体现在速度上,速度主要有两个指标:响应时间和吞吐量。响应时间是指从提交到完成所需的时间。CPU执行该程序所需要的时间,还有输入输出操作所需要的时间。

吞吐量值单位时间内完成的工作量。

7、CPU时钟频率越高,机器速度越快,对吗?

其它因素不变CPU时钟的频率越高,机器的速度就越快。但除了和谐,程序执行速度也越快。CPU除了速度,它还与存储器有关,I/O模块的读取速度等。

9.用户真正感受到的程序执行时间是执行程序中所有指令的时间吗?

不,执行程序所需的时间比用户真正体验的时间要短。因为在程序运行过程中,可能需要执行操作系统代码或其他用户程序,并可能需要等待I/O操作。

10、计算机的MIPS数量越大,性能越好,对吗?

不对,MIPS它反映了机器执行指定指令的速度。但是,不使用的机器有不同的指令集和不同的指令功能。一台机器上一个指令的功能可能需要多个指令才能在另一台机器上完成。此外,没有机器CPI它不同于时钟周期,因此指令使用的时间也不同。

1.5 单项选择题

所有要求

重点:2、6、7、9、16-18

1.6 分析应用题

2、3、7、9

第二章 机器级数据表示

2.3 解释基本术语

基数:进位计数值的基数。

无符号数:当一个编码的所有二进制位都用来表示数值时,该编码表示无符号数。

固定点数计算机中小数点固定在最左或最右边的数字,包括定点小数和定点整数。

浮点数:可在计算机中指定不同位置的小数点数。

补码:补码的编码规则正好用符号位0表示,负号用符号位1表示,正数值不变,负数值取反加1.

移码:

单精度浮点数

机器字长:在特定计算机中CPU用于定点整数运算的数据通路的宽度通常是CPU定点计算器和通用寄存器的位数。

大端方式:使用字节编址时,多字节数据将占用多个主存单元。在大端方式下,最低有效的字节数据字LSB存储在大地址单元中,即字地址MSB地址单元。

小端方式

2.4 回答常见问题

5.计算机中使用二进制来表示信息。为什么要引入八进制和十六进制?

在屏幕或书籍上写信息时,由于二进制信息位数多,十六进制与八进制与二进制的对应关系简单,易于阅读、记忆和写作,引入十六进制或八进制。

为什么现代计算机用补码来表示整数?

当指定的整数用补码表示时,符号位可以与值位一起计算。补码可以实现模型操作,减法操作可以通过加法实现。零是唯一的。可以表示最小负数。

15、为什么要引入浮点数表示?

由于定点数不能表示实数,且表示范围很小,因此需要引入浮点数表示。

为什么浮点数的阶(指数)要用移码表示?

因为在浮点数的加减操作中,要进行对阶操作,需要比较两个阶的大小。移码的本质是给阶加一个偏置常数,使所有阶码都是正整数,只需要从高位到顺序比就行了。

25、。。。。。。

因为float类型有效位数只有24位(7位10进制数),double由53位(17位十进制数),int位32位其中有效位数为31位。

29、汉字的区位码、国际码和机内码有什么区别?

2.5   单项选择题

【全部要求,26、33、34不要求】

重点:1-3、7-9、11-13、18、19、22、23、28

难点:

20(课本P39,规格化数的标志是,位数部分真值的绝对值大于等于1/R)

23(课本P40)     

2.6   分析应用题

1、4、5、8、9、12、13、15、22

第三章  运算方法和运算部件

3.3   基本术语解释

扩展操作:将一个取来的短数扩展成长数,有符号扩展和零扩展。

零扩展:对无符号整数进行高位补0

符号扩展:对补码整数在高位直接补符。

零标志ZF、溢出标志OF、进位/借位标志CF、符号标志SF:ZF为1时表示结果为0;OF为1时表示结果溢出;CF为1时表示在最高位产生了错位或借位;SF和符号为保持一致,若为1表示为负数。

通用寄存器组:CPU提供了多个通用寄存器,可以用来存放指令操作的对象,需要在指令明确给出寄存器的编号,所有通用寄存器合起来构成一个通用寄存组。通常通用寄存组有两个读口和一个写口。

多路选择器:在多个输入数据中根据控制信号选择其中一个作为输出的部件。

3.4   常见问题解答

1、无符号加法器如何实现?

串行进位加法器:通过将n个全加器按照串行的方式连接实现。进位选择加法器:通过两个分别带进位0和1的高位部分加法器的输出来实现高、低两部分的并行执行。并行进位加法器:通过引进进位生成函数和进位传递函数,使得进位之间相互独立。

2、补码加法器如何实现?

两个n位补码进行加法运算的规则:两个n位补码直接相加,并将结果中最高位的进位丢掉,采用模运算方式。用一个n位无符号加法器来生成各位的和。结果是否正确取决于结果是否溢出。

3、在补码加法器中,如何实现补码减法运算?

两个数差的补码可用第一个数的补码加上另一个数的负数的补码得到。

10、。。。。。。

3.5   单项选择题

【全部要求】

重点:1-3、7-10、12、1419、20

3.6   分析应用题

5、6、13、17(课本P77,重点)

第四章   指令系统

4.2   主要内容提要

4.寻址方式

4.3   基本术语解释

程序计数器(PC):是一个特殊的地址寄存器,专门存放下一条要执行的地址

指令寄存器:用来保存正在执行的指令。当执行一条指令时,先从存储器中取出指令,然后送至指令寄存器。

寻址方式:在程序执行过程中,需要取指令和操作数,确定指令和操作数存放位置的方式叫做寻址方式。

绝对转移:转移目标地址由指令指定的一个绝对地址确定,与当前指令位置无关。

相对转移:转移目标地址通过PC的值加上一个偏移量形成。

4.4   常见问题解答

1、一台计算机中的所有指令都是一样长吗?

不一定。有定长指令字和不定长指令字两种指令格式。定长指令字格式机器中所有指令都一样长。不定长指令字机器的指令有长有短,但每条指令的长度一般都是8的倍数。所以一个指令字可能占用多个存储单元。

2、每一条指令中都包含操作码吗?

是的。每条指令都必须告诉CPU该指令做什么操作,所以必须指定操作码。

3、每条指令中的地址码个数都一样吗?

不一定。每条指令操作数的个数可能不一样。每个操作数的寻址方式可能不同。地址码的省略方式可能不同。

4、一条指令中的所有操作数都采用相同的寻址方式吗?

不一定。在规整指令集中,一般一个指令只包含一种寻址方式,这样在指令操作码中就省略了寻址方式。当时不规整指令集,一条指令中的若干操作数可能存放在不同地方,因而可能每个操作数有各自的寻址方式。

5、指令中要明显给出下一条指令的地址吗?

不需要。指令在主存中按照执行顺序存放。大多数情况下程序时顺序执行,只有遇到转移指令时才改变指令执行的顺序。所以只需要加一个专门的地址寄存器,也就是PC。

16、直接寻址的操作数要几次访存?

一次。只需要根据指令中给出的直接地址就可以得到操作数。

17、间接寻址的操作数要进行几次存储访问?

至少两次。根据指令中给出的间接地址进行一次存储访问,取出来的是操作数所在的存储单元地址;再根据存储单元地址访存一次,取出来的才是操作数。如果是多级间接地址,则需要多次访存。

18、寄存器寻址的操作数要几次访存?

不需要访存。从指定寄存器取出的就是操作数。

19、寄存器间接寻址的操作数要几次访存?

一次。先从指令给出的寄存器中取出操作数所在的存储单元地址,再访存一次得到的就是操作数。

4.5   单项选择题

【全部要求】

重点:2、3、13、16、23

4.6  分析应用题

4、

第五章

5.2   主要内容提要

4.指令执行过程

执行过程大致分为取指、译码、取数、运算、存结果、查中断。

5.3   基本术语解释

指令周期:从取出一条指令执行到取出下一条指令执行的间隔时间。因为一半吧一条指令从存储器读出到执行完成所用的时间称为指令周期。取指、译码、取数、计算、存结果、查中断。

组合逻辑电路:任何时刻的输出取决于该时刻的输入,与电路原先状态无关。

时序逻辑电路:任意时刻的输入不仅取决于当时的输入信号,还取决于电路原来的状态,或者说还与之前的输入有关。

关中断:将中断允许触发器设置为0的操作,表示不允许响应中断。

开中断:将中断允许触发器设置为1的操作,表示允许响应中断。

5.4   常见问题解答

5、对于CPU中的寄存器,用户都能访问吗?

分为用户可访问寄存器和用户不可见寄存器。一般把用户可访问寄存器称为通用寄存器。这些寄存器都有一个编号,在指令中通过编号标识寄存器。指令中的寄存器编号要送到一个地址编译器进行译码,然后才能选中某一个寄存器进行读写。也有一些寄存器是没有编号的,不能通过程序直接访问。而程序计数器PC,虽然是专用寄存器但是用户可以用转移类指令来修改其值。

14、CPU中控制器的功能是什么?

主要是用来产生各条指令执行所需要的控制信号。有两大类控制信号:CPU内部控制信号和发送到系统总线上的控制信号。

15、数据通路的功能是什么?

数据通路的功能就是通过对数据进行处理、存储和传输来完成指令的执行。

24、如何确定单周期数据通路的时钟周期长度?

单周期数据通路的时钟周期的长度应该是以最复杂的指令所执行的时间来确定的,以保证所有指令都能在一个时钟周期完成。

25、单周期数据通路中,控制信号何时发出?

每条指令在一个周期内完成,所有控制信号同时产生,指令操作码字段及相关的控制字段送到控制逻辑,由控制逻辑统一得到各个控制信号,每个控制信号被送到相应的控制点,一直作用在数据通路上,直到下一条指令产生新的控制信号。

28、为什么很少有机器采用单周期数据通路?

因为单周期数据通路以最复杂的指令所需时间设计时间周期,每条指令执行时间是一样的,是极大的浪费。

29、单周期处理器的基本设计步骤是什么?

分析各条指令的功能;根据指令功能给出所需元件;确定每个元件所需的控制信号的取值;汇总所有指令所涉及的控制信号;根据关系表得到每个控制信号的逻辑表达式。

32、微程序控制器设计的基本思想是什么?

仿照程序设计的方法编制每个机器指令对应的微程序,每个微程序由若干条微指令构成。

5.5  单项选择题

【全部要求】

重点:6、9、15-18、21

5.6   分析应用题

13、16、

第六章

6.2   主要内容提要

1、指令流水线的设计与实现

将每条指令的执行规整化为若干个同样的流水阶段,每个流水阶段的执行时间一样,都等于一个时钟周期。其吞吐量比非流水线方式提高了若干倍,但是对于每一条指令来说反而比非流水线方式延长了时间。

每个流水段中的部件都是一组组合逻辑加上一组寄存器,组合逻辑中产生的结果在时钟到来时被存到寄存器中。每两个相邻的流水段之间的流水段寄存器用来记录所有后面阶段要用到的各种信息。

2、指令流水线的局限性

首先并不是每条指令都有相同多个流水段,也不是每个流水段的执行时间都需要一样长,因此为了能够方便的控制指令流水线的执行,通常以最复杂的指令所需阶段来确定流水段个数并以最复杂阶段所需时间为基准来设计时钟周期;其次随着流水线深度的增加,流水段寄存器的读写所带来的额外开销比例也增大;还会发生资源冲突、数据相关、控制相关。

4、流水线冒险的检测与处理

结构冒险:将寄存器的读口和写口独立开来,利用时钟上升沿和下降沿两次触发。对于存储器访存冲突,可以将指令存储器和数据存储器分开,是指令和数据的访问各自独立。

数据冒险:软件方式通过插入足够的nop指令,便不会发生数据冒险,但是增加了空间和时间开销。硬件方式插入气泡,使其相关指令延迟执行,需要修改数据通路,不增加指令数量,但有额外时间开销。采用转发技术将Ex/Mem流水段寄存器中的新值送到ALU输入端即可。对于像load-use这样不能通过转发解决的数据冒险,则插入气泡及阻塞指令继续执行。

控制冒险:软件方式插入nop空指令,硬件方式插入气泡来阻塞。分支预测技术,有静态预测和动态预测两种。

6.3   基本术语解释

流水线冒险:当若干指令都进入流水线开始执行后,如果其中某个流水段任务不能按时开始执行,则说明流水线被破坏,称为流水线冒险。

结构冒险:在指令流水线中,同一个部件同时被不同指令所使用的情况成为结构冒险。

控制冒险:转移指令或异常等情况改变了程序执行的流程,使得目标地址产生前就被去到了流水线中的指令无效的现象。

数据冒险:后面指令要用到前面指令的结果时,前面指令的结果还没产生。

转发:当后面指令要用到前面指令的结果时,前面流水段部件中得到的数据直接通过流水线传送到后面流水线的部件中,而不等前面指令结束。

写后读相关:指前一条指令对某寄存器单元写入,后一个指令需要从同一个寄存器读出,称为两条指令时写后读相关。

6.4   常见问题解答

1、什么样的指令格式更适合流水线方式?

定长指令字和定长操作码使得每条指令的预取和译码操作时间完全一致,便于流水线控制;指令类型少,操作数地址规整,便于规划操作数步骤。RISC指令设计风格更适合流水线方式。

2、采用流水线方式能使一条指令的执行时间更短吗?

不能。采用流水线方式是的指令吞吐量提高了,但是每条指令的执行时间变长了。

3、为什么流水线方式会延长一条指令的执行时间?

因为在确定一个流水线的流水段数时,是以最复杂的指令执行过程所需的个数为标准设计的。在确定流水段宽度时,是以最复杂的流水段所需宽度设计的。此外流水段之间的信息缓存和传递也增加了额外的执行时间开销。

7、流水线方式下,如何确定流水段的个数?

一条指令的执行过程被分为了若干个操作的子过程。现代计算机一般把复杂度相近的指令用同一条流水线完成,而复杂度相差很大的指令安排在不同的流水线。

6.5   单项选择题

【除18以外,全部要求】

重点:2、3、5、6、8、9

6.6   分析应用题

2、3、4、5

第七章

7.2   主要内容提要

1、存储器的分类

存取方式分为:随机存取存储器、顺序存取存储器、直接存取存储器和相连存取存储器。

存储介质分为:半导体存储器、磁表面存储器和光盘存储器

信息可更改性:可读可写和只读存储器

断电后是否保存:易失性和非易失性存储器

2、存储器的分层结构

寄存器-cache-主存-SSD或磁盘-光盘和磁带

6、主存的主要技术指标

存储容量、存取时间、存储周期和存储器带宽

8、高速缓存

7.3   基本术语解释

静态随机访问存储器:

动态随机访问存储器

存储器地址寄存器

存储器数据寄存器

存储周期

低位交叉编址

高位交叉编址

程序访问的局部性

命中率

缺失率

缺失损失

直接映射

全相联映射

组相联映射

直写

回写

关联度

虚拟存储器

地址变换

页表

7.4   常见问题解答

1、ROM和RAM一样,都是随机存取存储器吗?

是的。都是通过地址进行译码,选择某个单元进行读写。两者采用的都是随机存取方式。不过ROM只能读出信息,RAM可以读出也可以修改信息。

2、寄存器和主存储器都是用来存放信息的,它们有什么不同?

寄存器在CPU之中,用触发器来实现,速度极快,价格高。

主存储器在CPU之外,速度没有寄存器快。

3、存取时间就是存储周期吗?

不是。存取时间是指执行一次读操作或者写操作的时间。分为读出时间和写入时间。存储周期是指两次独立的写或读操作所需最小时间。

15、直接映射方式下是否需要考虑替换方式?为什么?

无需考虑。因为在直接映射方式下,一个给定的主存块只能映射到一个固定的cache槽中。

16、在CPU和主存之间加入了多个cache,计算机总存储量就增加了,对吗?

不对。虽然cache是存储器,但是存储的是主存信息的副本,并不能增加系统的存储容量。

24、在存储器层次结构中,cache——主存和主存——辅存这两个层次有何异同点?

都是基于局部性特点;都需要考虑之间的映射关系;当快速存储器满时,都需要考虑替换;再找不到信息时,都需要从慢速存储器中装入信息。

cache最接近CPU,辅存最远离CPU,CPU可以直接访问cache和主存,不能直接访问辅存;cache是为了加快CPU访问信息速度,辅存采用了虚拟存储器机制,为了让程序员不受内存容量限制。

31、CPU执行指令进行一次存储访问操作需要存取几次内存?

7.5  单项选择题

【全部要求】

重点:5、15、16、25、26、27、28

7.6 分析应用题

1、2、4、5、8、9、11

第八章

8.3   基本数据解释

独立编址    

统一编址

8.4   常见问题解答

25、为什么在介绍CPU设计时要讲中断的概念,在介绍I/O系统时又要讲中断的概念?

27、单重中断和多重中断的区别是什么?

29、禁止中断和屏蔽中断是同一个概念吗?

30、中断响应优先级和中断处理优先级一样吗?

8.5  单项选择题

2-4、20、22、32-42

标签: ecpu电容

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台