文章目录
- 计算机体系结构
- 计算机组成原理
- 计算机系统5层层次结构?哪些是物理机,哪些是虚拟机?
- 在计算机系统结构中,什么是翻译?什么是解释?
- 冯诺依曼机器的主要特点?
- 主存储器中,什么是MAR,什么是MDR,存储器的最大容量由什么决定?
- 什么是机器字长,什么是存储字长,什么是指令字长?
- 系统总线按照传输信息的不同,分成哪几类?是单向的,还是双向的?
- 存储器按存取方式,可以分成哪四类?哪些属于随机访问存储器,哪些属于串行访问存储器?
- 衡量存储器使用哪三个指标?寄存器、缓存(cache)、主存中,哪个速度最快?哪个最便宜?
- 字在存储单元中有两种存储方式,x86采用的是哪种存储方式?
- 什么是存取时间?什么是存取周期?哪个大?
- 随机存储器包含哪两大类?哪个需要刷新?请从速度、容量、价格等方面进行简要比较
- 提高访存速度的三种方式。
- 操作码长度:固定长度和可变长度
- 什么是中断?中断流程?中断服务程序的基本流程?
- 什么是DMA(直接内存访问)?
- 什么是形式地址?什么是有效地址?
- 数据在存储器中存储时,为什么要按照边界对齐?
- 当使用寄存器代替指令字中的地址码字段后,有哪些优点?
计算机体系结构
体系结构是什么
程序员所看到的计算机属性,即概念性结构和功能特性,如数据类型。指令集。
计算机系统由几部分组成、计算机系统性能取决于什么?
硬件和软件。
其中硬件包括五部分:输入输出设备、控制器、运算器、存储器
软件按照功能可分为系统软件和应用软件。
衡量一个计算机系统的优劣是根据多个指标综合确定的,有包含硬件部分的功能,也有包含软件部分的。
win32和win64区别
计算机体系结构是32位还是64位取决于计算机内部的处理器(CPU)。
64位系统可以保存和处理更多的信息。
64位处理器可以支持32位或64位操作系统,32位处理器仅支持32位操作系统。
64 位环境下,一些类型的长度会有所增加、
64 位程序能用的通用寄存器从 8 个增加到 16 个,每个寄存器的宽度(机器字长)从 32 位增加到 64 位
32位只能使用最高4 GB的RAM。
应用程序将安装到唯一的Program Files文件夹里,称为x86;
64位可以使用16 GB的RAM。
64位系统则有一个额外的程序文件(x86)夹,称为x64。
存储层次、缓存分级
存储系统通常分为:主存-辅存系统,主存-Cache系统
一个是主存和辅存的层次结构,主要是用来解决主存容量不足的问题,对应用程序设计者透明,对系统程序设计者不透明。
另一个是主存和cache的层次结构,主要是用来解决主存和CPU速度不匹配的问题,对所有程序员透明。
主存储器(CPU可以直接访问)、
辅存储器(外存,需调入主存才能被CPU访问):帮助主存储器记忆更多的信息。
高速缓冲存储器(Cache):为缓解CPU和主存速度不匹配的问题,避免CPU空等I/O访存,
在CPU和主存之间引入Cache。
CPU要读数据首先在cache中读,如果cache命中,CPU就可以极快的得到该地址处的值。
如果cache miss 也就是没有命中,CPU就会通过总线在内存中去读,并把连续的一块单元加载到cache中,下次好使用。
缓存(Cache)分级:
一级cache 有指令cache和数据cache之分,这使整个系统更加高效,但容量小。
二级缓存(L2 CACHE)出现是为了协调一级缓存与内存之间的速度,二级缓存是比一级缓存速度更慢,容量更大的内存,主要就是做一级缓存和内存之间数据临时交换的地方用。
CPU首先访L1级Cache,若不命中,再访问L2级Cache和主存。
三级cache同。
源码补码反码,有源码为什么有补码反码
源码:最简单的机器数表示法,最高位表示符号,符号位0正1负。
数值部分用二进制数的绝对值表示
没解决减法问题。即两个源码做加法运算,其中一个为负数就可能出错。
最大问题:非零数与相反数相加不为零,如+1 加 -1 为-2
(+1) + (-1) =
源码: 0001 + 1001 = 1010
引入补码,把减法运算转换为加法运算
正数源码的补码不变,
负数源码的补码 为反码+1
(+1) + (-1) = (+0)
源码:0001 + 1001 = 1010
补码:0001 + 1111 = 0000
引入反码,便于求负数的补码。
正数的反码与原码相同,负数的反码是符号位不变,数值位逐位取反。
流水线调度效率、五级流水线加速达到5吗
在任务数足够多的时,理论上接近5.
计算机组成原理
实现计算机体系结构所体现出来的特性
计算机系统5层层次结构?哪些是物理机,哪些是虚拟机?
1)微程序机器、传统机器、操作系统机器、汇编语言机器、高级语言机器
2)微程序机器和传统机器是物理机,其他是虚拟机。
在计算机系统结构中,什么是翻译?什么是解释?
翻译的话就是把一种编程语言一下子全都换成另一种语言,解释的话就是一句一句的解释和执行,总的来说就是一股脑和一下一下的区别。
冯诺依曼机器的主要特点?
有五个特点:
1.由运算器,存储器,控制器,输入输出这五大部件组成
2.指令和数据以二进制形式存储在存储器中
3.整个系统以运算器为中心
4.指令有操作码和地址码
5.指令按顺序存在,以按一定顺序输出
主存储器中,什么是MAR,什么是MDR,存储器的最大容量由什么决定?
MAR是address地址寄存器,MDR是DATA数据寄存器,存储器的最大容量由地址寄存器和数据寄存器的位数来决定的
什么是机器字长,什么是存储字长,什么是指令字长?
机器字长是CPU执行一次操作的二进制位数,存储字长是一个存储单元存的最长位数,指令字长是机器指令中二进制的最长位数
系统总线按照传输信息的不同,分成哪几类?是单向的,还是双向的?
分为数据总线,地址总线和控制总线
其中,数据总线和控制总线是双向的,而地址总线是单向的,由CPU发出。
存储器按存取方式,可以分成哪四类?哪些属于随机访问存储器,哪些属于串行访问存储器?
1)按存取方式分类可以分为
随机存储器(RAM)、只读存储器(ROM)、
顺序存储器(磁带)和直接存储器(磁盘);
2)随机存储器和只读存储器都是随机访问存储器,即访问内存时间与物理地址无关;
3)顺序存储器和直接存储器属于串行存访问储器,即存取时间与物理地址有关。
按层次分类可分为:主存、外存和Cache(高速缓冲存储器)
衡量存储器使用哪三个指标?寄存器、缓存(cache)、主存中,哪个速度最快?哪个最便宜?
分别是 容量,速度和价格。
寄存器->Cache->主存
其中寄存器速度最快,主存最便宜
字在存储单元中有两种存储方式,x86采用的是哪种存储方式?
1)大端方式:字的低位存在内存的高地址中,而字的高位存在内存的低地址中;
2)小端方式:字的低位存在内存的低地址中,而字的高位存在内存的高地址中。
3)x86 x64 CPU是小端(英特尔的CPU是小端)
什么是存取时间?什么是存取周期?哪个大?
存取时间是启动一次存储器操作到完成该操作所经历的时间(分为读出和写入时间)
存取周期是连续两次独立访问存储器操作(读或写)之间所需的最小时间间隔。
随机存储器包含哪两大类?哪个需要刷新?请从速度、容量、价格等方面进行简要比较
1)静态SRAM:以触发器原理寄存信息。
2)动态DRAM:以电容充电为原理寄存信息,需要刷新。
3)SRAM的存取速度快、但集成度低,功耗大,一般用来组成高速缓冲寄存器(Cache)
4)DRAM 容易集成、价格低、容量大和功耗低。但是存取速度较慢。
一般用来组成主存。
提高访存速度的三种方式。
1)采用高速元器件;(即采用存取周期短的芯片)
2)采用Cache(引入Cache-主存层次结构)
CPU最近要使用的信息先调入Cache,而Cache的速度比主存快得多,这样CPU每次只需从Cache中读写信息,从而缩短访存时间,提高访存速度。
3)调整主存结构:采用单体多字或多体结构存储器。
操作码长度:固定长度和可变长度
1)固定长度:便于硬件设计,指令译码时间短;
2)可变长度:压缩了操作码平均长度;
什么是中断?中断流程?中断服务程序的基本流程?
计算机在执行程序的过程中,出现某些急需处理的异常情况和特殊请求,CPU暂时中止现行程序,而转去处理这些异常情况或特殊请求,处理完毕后CPU自行返回到现行程序的断点处,继续执行原程序。
中断流程:
中断请求、
中断判优、
中断响应(终止程序转去中断服务)、
中断处理(执行中断服务程序)、
中断返回(结束中断服务,返回程序)
中断服务程序的基本流程:
1,保护现场 2.中断服务 3.恢复现场 4.中断返回
CPU响应中断的时机:当前指令结束之后
什么是DMA(直接内存访问)?
DMA是一种完全由硬件进行成组信息传送的控制方式,它具有程序中断的优点
DMA在外设和内存之间开辟一条直接数据通道,信息传送不再经过CPU。
称为直接存储器存取方式(如磁盘)
什么是形式地址?什么是有效地址?
1)形式地址:指令的地址码字段通常都不代表操作数的真实地址,称为形式地址,记为A;
2)有效地址:操作数的真实地址,记为EA,由寻址特征和形式地址共同决定;
数据在存储器中存储时,为什么要按照边界对齐?
为了减少访存次数
当使用寄存器代替指令字中的地址码字段后,有哪些优点?
1.减少访存次数
2.提高寻址范围