文章目录
- 计算机组成原理
- 1. 计算机系统由哪两部分组成?计算机系统性能取决于什么?
- 2. 冯·诺依曼机的主要特点?
- 3. 主存储器由什么组成,各部分有什么作用?
- 4. 什么是存储单元、存储字、存储字长、存储体?
- 5. 计算机系统五层层次结构从下到上由哪五层组成?他们之间有哪些区别和联系?哪些是物理机,哪些是虚拟机?
- 6. 什么是翻译?什么是解释?
- 7. 从源程序文件hello.c翻译成一个可执行文件hello.exe的过程是怎样的?
- 8. 主存储器中,什么是MAR,什么是MDR,存储器的最大容量由什么决定?假设MAR寄存器的位数为16位,MDR寄存器的位数为16位,存储器的最大容量是多少?
- 9. 机器字长,存储字长?
- 10. 总线作用?两大基本特征?
- 11. 什么是计算机体系结构?什么是计算机组成原理?以乘法指令为例说明二者区别。
- 12. 系统整体的性能指标有哪些?
- 13. 存储器按存取方式,可以分成哪几类?哪些采用随机访问,哪些采用串行访问?
- 14. 存储器的性能指标有哪些?
- 15. 简述多级存储系统。
- 16. 存取时间、存取周期和主存带宽
- 17. 随机存储器(RAM)包含哪两大类?它们之间有什么区别?
- 18. DRAM的刷新方式有哪些?
- 19. 只读存储器有哪几种?
- 20. 存储器的扩展通常有位扩展和字扩展,什么是字扩展,什么是位扩展?请举例简要说明
- 21. 怎样提高CPU访问存储器的速度?
- 22. 多体并行系统有哪两种编址方式?请简要说明其编址方式及其优点。
- 23. 在CPU和内存之间引入cache的原因。
- 24. 什么是程序的局部性原理?
- 25. 常见的Cache映射方式,优缺点?
- 26. Cache常用的替换算法有哪些?哪个命中率最高?
- 27. Cache写操作有哪两种方式?
- 28. 带TLB虚拟存储器的CPU访存过程?
- 29. I/O设备编址有哪两种方式?各有什么优缺点?
- 30. 虚拟存储器
- 31. 什么是指令?有哪些分类?
- 32. 数据寻址方式有哪些?
- 33. 什么是RISC和CISC?
- 34. CPU的功能有哪些?
- 35. CPU有哪些基本结构?
- 36. 指令周期分为哪些?数据流向如何?
- 37. 什么是指令流水线有哪些性能指标?
- 38. 影响流水线的因素有哪些?
- 39. 流水线的多发技术有哪些?
- 40. 什么是总线定时(总线通信控制),有哪几种?
- 41. I/O控制方式分为哪几种?
- 42. 简述中断处理过程。
计算机组成原理
1. 计算机系统由哪两部分组成?计算机系统性能取决于什么?
- 计算机系统由硬件和软件两部分组成,它们在逻辑上是等效的(例如,对于乘法运算,可以设计一个专门的硬件电路来实现,也可以通过执行多次加法运算来实现)
- 或者五大部件(输入、输出设备,存储器,运算器,控制器)。
- 计算机系统性能由硬件和软件共同决定。
2. 冯·诺依曼机的主要特点?
1)采用“存储程序”的工作方式。
2)计算机硬件系统由运算器、存储器、控制器、输入设备、输出设备五大部分组成。
3)指令和数据以同等地位存储在存储器中,形式上没有区别,但计算机能区分它们(通过指令执行的不同阶段)。
4)指令和数据均用二进制代码表示。指令由操作码和地址码组成,操作码指出操作的类型,地址码指出操作数的地址。
5)以运算器为中心,I/O设备与存储器交换数据也要通过运算器,CPU利用率极低,因此,现代计算器以存储器为中心。
3. 主存储器由什么组成,各部分有什么作用?
1)存储体:存放二进制信息。
2)地址寄存器(MAR):存放访存地址。
3)数据寄存器(MDR):暂存要从存储器中读或写的信息。
4)时序控制逻辑:用于产生存储器操作所需的各种时序信号。
4. 什么是存储单元、存储字、存储字长、存储体?
-
存储单元:存储一个存储字并具有特定存储地址的存储单位;
-
存储字:一个存储单元中存放的所有的二进制数据,按照某个地址访问某个存储单元获取的二进制数据。
-
存储字长:存储字中二进制数据的位数,即按照某个地址访问某个存储单元获取的二进制数据的位数;
-
存储体:由多个存储单元构成的存储器件。
5. 计算机系统五层层次结构从下到上由哪五层组成?他们之间有哪些区别和联系?哪些是物理机,哪些是虚拟机?
1)微程序机器、传统机器、操作系统机器、汇编语言机器、高级语言机器
2)微程序机器和传统机器是物理机器,属于硬件;操作系统机器、汇编语言机器和高级语言机器是虚拟机器,属于软件。各层次间,下层是上层的基础,上层是下层的扩展
3)微程序机器和传统机器是物理机,其他是虚拟机。
6. 什么是翻译?什么是解释?
1)翻译:将一种语言编写的程序全部翻译成另一种语言,然后再执行,只需翻译一次,通常会生成可执行文件。如c语言。
2)解释:将源程序的一条语句翻译成另一种语言的对应语句,并立即执行,紧接着再翻译下一句,每次执行都要翻译。如python。
7. 从源程序文件hello.c翻译成一个可执行文件hello.exe的过程是怎样的?
8. 主存储器中,什么是MAR,什么是MDR,存储器的最大容量由什么决定?假设MAR寄存器的位数为16位,MDR寄存器的位数为16位,存储器的最大容量是多少?
1)MAR:存储地址寄存器,保存需要访问的存储单元地址。反映存储单元的个数。
2)MDR:存储数据寄存器,缓存读出/写入存储单元的数据。反映存储字长。
3)存储器的最大容量由MAR寄存器的位数和MDR寄存器的位数决定。
4)MAR寄存器的位数为16位,能表示的地址个数为2的16次方,为64K;
5)MDR寄存器的位数为16位,说明存储字长为16位,也即2个字节;
6)存储器的最大容量为64K * 2B = 128K Byte
9. 机器字长,存储字长?
机器字长:CPU一次能够处理的二进制数据的位数。
存储字长:按照某个地址访问某个存储单元获取的二进制数据的位数。
10. 总线作用?两大基本特征?
-
在冯诺依曼结构中,各个部件之间均有单独连线,不仅线多,而且导致扩展I/O设备很不容易。即扩展一个I/O设备,需要连接很多线。
-
因此,引入了总线连接方式,将多个设备连接在同一组总线上,构成设备之间的公共传输通道。
1)共享:多个部件连接在同一组总线上,各个部件之间都通过该总线进行数据交换。
2)分时:同一时刻,总线上只能传输一个部件发送的信息;
11. 什么是计算机体系结构?什么是计算机组成原理?以乘法指令为例说明二者区别。
1)计算机体系结构是指程序员所见到的计算机的属性,概念性的结构与功能特性。如指令系统、数据类型等
2)计算机组成原理是指如何实现计算机体系结构所体现出来的属性,对程序员透明
3)以乘法指令为例,计算机是否有乘法指令,属于体系结构的问题;乘法指令是采用专用的乘法器,还是使用加法器和移位器构成,属于计算机组成原理的问题
12. 系统整体的性能指标有哪些?
1)数据通路带宽:数据总线一次所能并行传送信息的位数
2)吞吐量:系统在单位时间内处理请求的数量
3)响应时间:用户向计算机发送一个请求,到系统对该请求作出响应并获取它所需要的结果的等待时间,包括CPU时间与等待时间
13. 存储器按存取方式,可以分成哪几类?哪些采用随机访问,哪些采用串行访问?
14. 存储器的性能指标有哪些?
1)存储容量 = 存储字数 × 字长
2)单位成本:每位价格 = 总成本 / 总容量
3)存储速度:数据传输率 = 数据的宽度 / 存储周期
15. 简述多级存储系统。
1)由下至上分别为外存、辅存、内存、高速缓冲存储器(Cache)和寄存器。价位越来越高,速度越来越快,容量越来越小,CPU访问频率越来越高
2)存储系统层次结构主要体现在“Cache - 主存”层次和“主存 - 辅存”层次。前者主要解决CPU和主存速度不匹配的问题,由硬件自动完成,对所有程序员完全透明;后者主要解决存储系统的容量问题,由操作系统和硬件共同完成,对应用程序员透明,对系统程序员不透明
16. 存取时间、存取周期和主存带宽
1)存取时间:启动一次存储器操作到完成本次操作所经历的时间
2)存取周期:进行一次完整的读写操作所需的全部时间,即连续两次独立访问存储器操作之间所需的最小时间间隔,包含存取时间和恢复时间
3)主存带宽:又称数据传输率,表示每秒从主存进出信息的最大数量
17. 随机存储器(RAM)包含哪两大类?它们之间有什么区别?
1)静态随机存储器(SRAM)和动态随机存储器(DRAM),都属于易失性存储器
2)SRAM:非破坏性读出,不需要刷新。存取速度快,但集成度低,功耗大,常用于Cache
3)DRAM:破坏性读出,需要刷新。集成度高、价位低、容量大、功耗低,但是速度比SRAM慢,常用于主存
18. DRAM的刷新方式有哪些?
1)集中刷新:在一个刷新周期内,利用一段固定的时间对所有行进行再生,在此期间停止读写操作,称为“死时间”
2)分散刷新:把对每行的刷新分散到各个工作周期,没有死区,但加长了系统的存取周期,降低了整机的速度
3)异步刷新:将刷新周期除以行数,得到两次刷新操作之间的时间间隔,避免CPU连续等待,而且减少了刷新次数
19. 只读存储器有哪几种?
1)掩模式只读存储器(MROM):出厂后内容不能被更改
2)一次可编程只读存储器(PROM):可以进行一次性编程
3)可擦除可编程只读存储器(EPROM):可以用紫外线或电擦除,对内容进行多次更改
4)闪存(FLash Memory):断电后也能保存信息,可进行多次的快速擦除重写,需先擦除再写入,如U盘、SD卡
5)固态硬盘(SSD)
20. 存储器的扩展通常有位扩展和字扩展,什么是字扩展,什么是位扩展?请举例简要说明
1)位扩展:增加存储器的字长,例如两个1K * 4位的存储芯片构成1个1K*8位的存储器;
2)字扩展:增加存储器的字数,例如两个1K * 8位的存储芯片构成1个2K * 8位的存储器;
通常字扩展和位扩展两种方式混合使用。
21. 怎样提高CPU访问存储器的速度?
1)采用高速元器件
2)采用“Cache - 主存”存储结构:①避免CPU空等I/O访存;②缓解CPU和主存速度不匹配的问题
3)调整主存结构,采用双端口存储器、多模块存储器,例如单体多字存储器和多体并行存储器
22. 多体并行系统有哪两种编址方式?请简要说明其编址方式及其优点。
1)高位交叉编址方式:存储体的编址方式为顺序存储,即一个存储体存满后,再存入下一个;存储单元地址的高位为存储体的编号。
高位交叉编址并不能提高单次访存速度,但能使多应用并行访存,提高系统的并发性。
2)低位交叉编址方式:存储体的编址方式为交叉存储。即程序连续存放在相邻的存储体之中。存储单元地址的低位为存储体的编号。
低位交叉编址能显著提高单次访存速度。
23. 在CPU和内存之间引入cache的原因。
1)避免cpu空等I/O访存;
2)缓解CPU和主存速度不匹配的问题。
24. 什么是程序的局部性原理?
局部性原理表现为:时间局部性和空间局部性。
- 时间局部性是指如果程序中的某条指令一旦执行,则不久之后该指令可能再次被执行;如果某数据被访问,则不久之后该数据可能再次被访问。
- 空间局部性是指一旦程序访问了某个存储单元,则不久之后,其附近的存储单元也将被访问。
25. 常见的Cache映射方式,优缺点?
1)直接映射。优点:地址变换速度快。缺点:cache利用率不高,块冲突率高;
2)全相联映射。优点:cache利用率高,块冲突率低。缺点:地址变换复杂,需要较多的硬件(成本高,按贵的按内容寻址的相联存储器)。
3)组相联映射。是另外两种方式的折中,综合效果好
26. Cache常用的替换算法有哪些?哪个命中率最高?
-
随机算法、先进先出算法、近期最少使用(LRU)、最不经常使用算法(LFU)。
-
命中率最高的是近期最少使用算法(LRU);
27. Cache写操作有哪两种方式?
1)全写法(写直通法、write-through):写操作既写入Cache又写入主存;
2)写回法(write-back):只把数据写入Cache而不写入主存,当Cache中数据被替换出去之后才写入主存。
28. 带TLB虚拟存储器的CPU访存过程?
29. I/O设备编址有哪两种方式?各有什么优缺点?
1)统一编址方式:和存储器统一编址,I/O地址作为存储器地址的一部分;无须用专用的I/O指令,但占用存储器空间。
2)独立编址方式:和存储地址分开编址,需用专用的I/O指令。
30. 虚拟存储器
1)页式虚拟存储器
2)段式虚拟存储器
3)段页式虚拟存储器
31. 什么是指令?有哪些分类?
指令又称机器指令,是指示计算机执行某操作的命令,是计算机运行的最小功能单位。一条指令通常由操作码和地址码两部分组成
1)按地址码数分类:①零地址指令;②一地址指令;③二地址指令;④三地址指令;⑤四地址指令
2)按指令长度分类:定长指令字结构和变长指令字结构
3)按操作码长度分类:定长操作码和可变长操作码
4)按操作类型分类:数据传送类、运算类、程序控制类和输入输出类
32. 数据寻址方式有哪些?
1)隐含寻址:有效地址由程序制指定,寻址期间访存0次
2)立即寻址:形式地址A即是操作数,访存0次
3)直接寻址:形式地址A就是有效地址EA,即EA=A,访存1次
4)一次间接寻址:形式地址A中的内容是有效地址EA,即EA=(A),访存2次
5)寄存器寻址:EA=R,访存0次
6)寄存器间接一次寻址:EA=®,访存1次
7)基址寻址:将CPU中基址寄存器(BR)中的内容,加上指令格式中的形式地址A,形成操作数的有效地址,即EA=(BR)+A。便于程序浮动,方便实现多道程序并发运行,访存1次
8)变址寻址:有效地址EA等于指令字中的形式地址A与变址寄存器IX的内容之和,即EA=(IX)+A,其中IX可为变址寄存器,也可用通用寄存器作为变址寄存器。变址寄存器是面向用户的,适合编织循环程序,访存1次
9)相对寻址:EA=(PC)+A,多用于转移指令,访存1次
10)堆栈寻址
33. 什么是RISC和CISC?
指令系统朝着两个截然不同的方向发展:
- 一是增强原有指令的功能,设计为更复杂的新指令实现软件功能的硬化,这类机器称为复杂指令系统计算机(CISC),经典的有采用x86架构的计算机;
- 二是减少指令种类的简化指令功能,提高指令的执行速度,这类机器称为精简指令系统计算机(RISC),典型的有ARM、MIPD架构的计算机。
34. CPU的功能有哪些?
1)指令控制:完成取指令、分析指令和执行指令的操作
2)操作控制:一条指令的功能往往是由若干操作信号的组合实现的
3)时间控制:对各个操作加以时间上的控制
4)数据加工:对数据进行算数和逻辑运算
5)中断处理:对计算机运行过程中出现的异常情况和特殊请求进行处理
35. CPU有哪些基本结构?
CPU由运算器和控制器组成
运算器的基本结构有,
1)算术逻辑单元ALU
2)暂存寄存器DR
3)通用寄存器组
4)累加寄存器ACC
5)程序状态字寄存器PSW
6)移位器、计数器
控制器的基本结构有,
1)程序计数器PC
2)指令寄存器IR
3)指令译码器、时序系统、微操作信号发生器
4)地址寄存器MAR
5)数据寄存器MDR
用户可见的寄存器:通用寄存器组、程序状态字寄存器PSW、程序计数器PC、ACC
用户不可见的寄存器:MAR、MDR、IR、暂存寄存器DR
36. 指令周期分为哪些?数据流向如何?
1)取指周期
(PC)→MAR
M(MAR)→MDR
(MDR)→IR
(PC)+1→PC
2)间址周期
Ad(IR)→MAR
M(MAR)→MDR
(MDR)→Ad(IR)
3)执行周期
不同指令的执行周期操作不同。
4)中断周期
(SP)-1→SP
(SP)→MAR
(PC)→MDR
(MDR)→M(AMR)
向量地址→PC
5)指令周期有单指令周期和多指令周期,指令间串行
37. 什么是指令流水线有哪些性能指标?
1)指令执行过程划分为不同阶段,占用不同的资源,使多条指令同时执行。性能指标有,吞吐率,加速比,效率
2)吞吐率:指单位时间内流水线所完成的任务数量
3)加速比:完成同一批任务,不使用流水线所用的时间和与使用流水线所用的时间之比
4)效率:流水线的设备利用率。在时空图上,流水线的效率定义为完成n个任务占用的时空区有效面积与n个任务所用的时间与k个流水线段所围成的时空区总面积之比
38. 影响流水线的因素有哪些?
1)结构相关(资源冲突):由于多条指令在同一时刻争用同一资源而形成的冲突
2)数据相关(数据冲突):后一条指令必须等前一条指令执行完才能执行
3)控制相关(控制冲突):当流水线遇到转移指令和其他改变PC值的指令而造成断流
39. 流水线的多发技术有哪些?
1)超标量技术:每个时钟周期内可以并发多条独立指令,需要配置多个功能部件,不能调整指令的执行顺序
2)超流水线技术:在一个时钟周期内再分段,一个功能部件使用多次,不能调整指令的执行顺序
3)超长指令字:由编译程序挖掘出指令间的并行性,将多条能并行操作的指令组合成一条,具有多个操作码字段
40. 什么是总线定时(总线通信控制),有哪几种?
总线定时是指总线在双方交换数据的过程中需要时间上的配合关系的控制,实质是一种协议或规则
1)同步定时方式:由统一时钟控制数据传输。优点是传输速度快,总线控制逻辑简单;缺点是不能及时进行数据通信的有效性检验,可靠性较差
2)异步定时方式:采用应答方式,没有公共时钟标准,分为不互锁方式、半互锁方式和全互锁方式。优点是总线周期长度可变,能够保证两个工作速度相差较大的部件或设备之间可靠地进行信息交换;缺点是速度稍慢
3)半同步通信:同步与异步的结合,在统一时钟的基础上,增加一个“等待”响应信号
4)分离式通信:各模块均有权申请占用总线,采用同步方式通信,各模块准备数据时不占用总线,总线利用率高
41. I/O控制方式分为哪几种?
1)程序查询方式:CPU“忙等”慢速设备完成工作,二者串行工作
2)程序中断方式:设备准备数据时,CPU继续工作。设备准备好之后向CPU发出中断请求,CPU在指令周期的末位,即当前指令执行完毕后,检查中断并做出中断响应
3)DMA控制方式:主存与高速I/O设备之间有一条直接数据通路(DMA总线),DMA控制器自动控制磁盘与主存的数据读写,每完成一整块数据读写,才向CPU发出一次中断请求
4)通道方式:CPU执行I/O指令对通道发出命令,由通道执行一系列通道指令,代替CPU对I/O设备进行管理,通道程序提前编制好放在主存中