计算机系统概述
参考《王道计算机组成原理》
计算机组成原理是408内容,也是为了更好学习C语言数据类型的科目,以下将对这门课的内容进行讲解。在概述中,主要对计算机系统层次结构和性能指标进行讲解,考纲内容如下:
- 一、计算机系统层次结构
计算机系统的基本组成;计算机硬件的基本组成;计算机软件的分类;计算机的工作过程; - 二、计算机性能指标
吞吐量、响应时间、CPU时钟周期、主频、CPI、CPU执行时间MIPS、MFLOPS、GFLOPS、TFLOPS、PFLOPS、EFLOPS、ZFLOPS;
下文将根据考纲内容进行讲解
1 计算机系统层次结构
从1946年第一台电子数字计算机ENIAC问世以来,计算机的发展经历过四代变化,分别是电子管时代,逻辑元件采用电子管;晶体管时代,逻辑元件采用晶体管,出现FORTRAN;中小规模集成电路时代,OS快速发展;超大规模集成电路时代,产生CPU。
1.1 计算机系统的组成
完整的计算机系统由软件系统和硬件系统构成。硬件指实际物理装置的总称;软件指硬件上运行的程序和相关数据及文档。
计算机系统性能的好坏由软硬件共同决定,软硬件在逻辑上是可以等效的,但往往使用硬件实现效率更高。
1.2 计算机硬件的基本组成
计算机的组织结构的发展主要经历过两个时期,分别是以运算器为核心的冯洛伊曼计算机结构和以存储器为核心的现代计算机组织结构。
-
早期的冯洛伊曼机
提出存储程序概念,该思想特点如下:
一、计算机硬件系统由运算器、存储器、控制器、输入设备和输出设备组成;
二、指令和数据采用二进制代码表示;
三、指令和数据同等地位存储在存储器中,并可按地址寻址;
四、指令由操作码和地址码组成,操作码指出操作的类型,地址码指出操作数的地址;
五、指令在存储器内按顺序存放,指令通常按顺序执行,但特殊jump指令等可以跳转执行;
六、早期冯洛伊曼以运算器为中心;
如图所示:
-
现代计算机组织结构
上一条中的第六台改成以存储器为中心便可。需要注意的是运算器和控制器构成CPU,运算器、控制器和存储器构成主机,如下: -
计算机功能部件介绍
输入设备:键盘、鼠标等
输出设备:显示器、打印机等
存储器:包括主存(内存条)和外存/辅存(硬盘),其中CPU能直接访问的是主存,辅存中内容需要先调入主存才能被CPU访问。存储器由存储体构成,控制它的MAR(地址寄存器)和MDR(数据寄存器)都位于CPU中。
运算器: 用于算术运算加减乘除和逻辑运算与或非、异或、比较、移位等运算。运算器的组成有ALU、ACC、PSW等寄存器。
控制器:用于指挥各部件协调工作。控制器的组成有PC、IR、CU等寄存器。
1.3 计算机软件的分类
软件分为系统软件和应用软件。系统软件例如OS、数据库管理系统等。
语言有三个级别,如:机器语言(二进制)、汇编语言(英文单词)、高级语言(C)。
1.4 计算机的工作过程
计算机的工作过程分为三个步骤:
1)将程序和数据装入主存储器(涉及到取指、析指等操作)
2)将源程序转换成可执行文件
3)从可执行文件的首地址开始逐条执行语句
从源程序到可执行文件
以GCC为例,.c文件到最后的可执行文件需要经历四个阶段,分别是预处理阶段(处理#)、编译阶段(转为汇编语言)、汇编阶段(转为二进制)、链接阶段(链接器将多个可重定位目标文件和标准库函数合并为一个可执行目标文件)。过程如下图:
2 计算机性能指标
- 机器字长
机器字长:指计算机进行一次整数运算所能处理的二进制数据的位数。取决于CPU中数据总线的长度。
指令字长:一个指令字中包含的二进制代码位数。取决于最长指令的长度,取决于IR位数。
存储字长:一个存储单元存储的二进制代码位数。取决于MDR位数。
64bit架构计算机能用32bit操作系统和64bit操作系统,32bit架构计算机只能用32bit操作系统。 - 数据通路带宽
指外部数据总线一次并行传送信息的位数。取决于CPU外部数据总线的宽度。 - 主存容量
主存储器所能存储信息的最大容量,由MAR位数决定,以字节衡量。 - 运算速度
- 吞吐量:系统在单位时间内处理请求的数量
- 响应时间:用户发出请求到系统处理请求的等待时间
- CPU时钟周期:主频倒数
- 主频(CPU时钟频率):主频越高,完成指令的执行步骤所用时间越短。脉冲信号等可以参考《信号与系统》
- CPI:Clock cycle Per Instruction,执行一条指令所需时钟周期数
- CPU执行时间:运行一个程序花费的时间
- MIPS:Million Instruction Per Second
- MFLOPS、GFLOPS。。。每秒执行多少次浮点运算
固件:将程序固定在ROM中组成的部件