计算机组成原理

1.计算机系统由哪两部分组成?计算机系统性能取决于什么?

计算机系统是由软件和硬件组成的,衡量一个计算机系统的优劣是根据多个指标综合确定的,有包含硬件部分的功能,也有包含软件部分的。

2.计算机系统5层层次结构从下到上由哪五层组成?哪些是物理机,哪些是虚拟机?

微程序设计级、一般机器级、操作系统级、汇编语言级、高级语言级

微程序设计级、一般机器级是物理机,其他是虚拟机

3.在计算机系统结构中,什么是编译?什么是解释?

编译就是把一种编程语言一下子全都换成另一种语言,解释的话就是一句一句的解释和执行

4、冯诺依曼机器的主要特点?

主要设计思想是:存储程序,顺序执行

1.由运算器,存储器,控制器,输入输出设备这五大部件组成
2.指令和数据以二进制形式存储在存储器中
3.整个系统以运算器为中心
4.指令有操作码和地址码
5.指令按顺序存放

5.主存储器中,什么是MAR,什么是MDR,存储器的最大容量由什么决定?

MAR:存储地址寄存器,保存需要访问的存储单元地址,反应存储单元个数。
MDR:存储数据寄存器,缓存读出、写入存储单元的数据,反应存储字长。
存储器的最大容量由MAR寄存器的位数和MDR寄存器的位数决定。

6、主存储器中什么是RAM什么是ROM?

RAM是随机读写存储器,断电之后不保存数据。ROM是只读存储器,断电后数据不丢失。

7、存储器按存取方式,可以分成哪四类?哪些属于随机访问存储器,哪些属于串行访问存储器?

1)可以分为随机存储器(RAM)、只读存储器(ROM)、顺序存储器(SAM)和直接存储器(DAM);【DAM:访问时读/写部件先直接指向一个小区域,再在该区域内顺序查找。】
2)随机存储器和只读存储器属于随机存储器,即存取时间与物理地址无关;
3)顺序存储器(典型的如磁带)和直接存储器(典型的如磁盘)属于串行存储器,即存取时间与物理地址有关。

8、什么是机器字长,什么是存储字长,什么是指令字长?

机器字长是CPU执行一次操作所能处理二进制位数,存储字长是一个存储单元存的最长位数,指令字长是机器指令中二进制的最长位数

9、系统总线按照传输信息的不同,分成哪几类?是单向的,还是双向的?

分为数据总线,地址总线和控制总线
其中,数据总线和控制总线是双向的,而地址总线是单向的,由CPU发出。

10、衡量存储器使用哪三个指标?寄存器、缓存(cache)、主存中,哪个速度最快?哪个最便宜?

分别是 容量,速度和价格。其中寄存器速度最快,主存最便宜

11、常见的存储系统层次结构有哪两种?透明性如何?各自用来解决什么问题的?

一个是主存和辅存的层次结构,主要是用来解决主存容量不足的问题,对应用程序设计者透明,对系统程序设计者不透明。另一个是主存和cache的层次结构,主要是用来解决主存和CPU速度不匹配的问题,对所有程序员透明。

【透明:完全不知道某模块内部实现,也不需要知道,因为无论它的内部是如何实现的,它提供的对外接口是一致的,调用接口的人无需关心其内部实现原理。】

12、字在存储单元中有两种存储方式,大端方式和小端方式。各是什么含义?x86采用的是哪种存储方式?

1)大端方式:字的低位存在内存的高地址中,而字的高位存在内存的低地址中;
2)小端方式:字的低位存在内存的低地址中,而字的高位存在内存的高地址中。
3)x86CPU采用的是小端方式。

13、什么是存取时间?什么是存取周期?哪个大?

1)存取时间:启动一次存储器完成本次操作(读或写)所需的时间;
2)存取周期:连续两次启动存储器所需要的最小间隔时间;
3)存取周期包含存取时间;

14、随机存储器包含哪两大类?哪个需要刷新?请从速度、容量、价格等方面进行简要比较

1)静态SRAM:采用锁存器原理实现;
2)动态DRAM:采用电容原理实现,需要刷新。
3)相比于动态RAM,静态RAM的速度快、容量小、价格高,一般用于缓存,而动态RAM一般用于内存。(总之就是静态的RAM的价值更高)

15、提高访存速度的三种方式。

1)采用高速元器件;(硬件方面)
2)采用存储层次结构:cache-主存结构;(软件方面)
3)调整主存结构:包括单体多字,多体并行两种方式(软件方面)

【单体多字:按同一地址码并行地访问各自对应单元,每一个单元为一个字,每字m位。可以同时选中存储器的n个单元,可以将带宽提高n倍。】

【多体并行:多体并行系统是指多个容量相同的存储模块,而各模块各自有独立的地址寄存器(AR),译码器和数据寄存器(DR)。】

16、什么是中断?

系统在运行过程中,遇到了异常。系统就开始采取中断措施。停止当前的运行,并保存对应的现场,随后去处理该异常,之后恢复现场,继续执行。

17、中断服务程序的基本流程包括哪四部分?

1,.保护现场 2.中断服务 3.恢复现场 4.中断返回

18、CPU响应中断的时机?

当前指令结束之后

19、操作码长度有固定长度和可变长度两种,各自有什么优点?

1)固定长度:便于硬件设计,指令译码时间短;
2)可变长度:压缩了操作码平均长度;

20、什么是DMA?

直接内存访问。在主存和I/O设备之间建立独立的总线连接。

CPU和外设之间数据传输的方式,外部设备发送DMA请求,CPU同意之后就让出总线控制权,DMA控制器接管总线控制权之后开始进行外部设备与内存之间的直接数据的c传输。
DMA请求、DMA响应、数据传输、DMA结束
(预处理–>数据传输–>后处理)

21、在DMA方式中,由于DMA接口与CPU共享主存,可能会出现两者争用主存的冲突,为解决冲突,DMA和主存交换数据时,通常采用哪三种工作方式?

1)停止CPU访存:当需要传送数据时,停止CPU对主存的访问
2)周期挪用:I/O设备需要访存时,挪用一个或几个存取周期
3)DMA和CPU交替访问:将CPU工作周期分成两部分,一部分供DMA访存,一部分供CPU访存。

22、什么是形式地址?什么是有效地址?

1)形式地址:指令的地址码字段通常都不代表操作数的真实地址,成为形式地址;
2)有效地址:操作数的真实地址

23、总线是什么

1)总线是一组功能部件之间分时共享的公共信息传送线路。分时、共享是它的两大特点。
2)分时是指同一时刻只能有一个部件向总线上发出信息。
3)总线分为三大类:片内总线、系统总线(数据总线+控制总线+地址总线)、通信总线。
4)通信方式分为:异步通信和并行通信。
5)一些特性:功能特性、电气特性、机械特性、时间特性。

24、说下五级流水CPU的各阶段

五级流水线指的是:取指、译码、执行、访存、写回五个操作。
1)取指:
指令取指是指将指令从存储器中读取出来的过程。

2)译码:
指令译码是指将存储器中取出的指令进行翻译的过程。经过译码之后得到指令需要的操作数寄存器索引,可以使用此索引从通用寄存器组中将操作数读出。

3)执行:
指令译码之后所需要进行的计算类型都已得知,并且已经从通用寄存器组中读取出了所需的操作数,那么接下来便进行指令执行。指令执行是指对指令进行真正运算的过程。譬如,如果指令是一条加法运算指令,则对操作数进行加法操作;如果是减法运算指令,则进行减法操作。
在“执行”阶段的最常见部件为算术逻辑部件运算器,作为实施具体运算的硬件功能单元。

4)访存:
存储器访问指令往往是指令集中最重要的指令类型之一,访存是指存储器访问指令将数据从存储器中读出,或者写入存储器的过程。

5)写回:
写回是指将指令执行的结果写回通用寄存器组的过程。如果是普通运算指令,该结果值来自于“执行”阶段计算的结果;如果是存储器读指令,该结果来自于“访存”阶段从存储器中读取出来的数据。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐