第一章 计算机系统概述

分类与发展方向
计算机的分类
按照用途分类
电子模拟计算机;
电子数字计算机;
通用计算机;
专用计算机;
按照指令流和数据流分类
单指令流单数据流 SISD:冯诺依曼体系结构;
单指令流多数据流 SIMD:阵列处理器、向量处理器;
多指令流单数流 MISD:实际上不存在;
多指令流多数据流 MIMD:多处理器、多计算机;
按照驱动方式分类
控制流驱动:即指令控制数据的存取(冯诺依曼结构)(冯诺依曼架构是控制流驱动)
数据流驱动:先将需要的数据准备齐全,然后指令运行;
微型计算机的发展以微处理器技术为标志。
计算机的结构
软件系统和硬件系统共同构成了完整的计算机系统;
某一功能,既可以使用软件实现,又可以使用硬件实现,则称在软硬件在逻辑上是等效的;使用硬件解决效率更高;
计算机的组织架构
冯诺依曼架构
冯诺依曼架构最重要的意义在于提出了存储程序的基本思想 ;
由五部分组成
运算器 控制器 存储器 输入设备 输出设备 指令与数据等地位存储,形式上没有区别,按址寻访;
指令与数据均由二进制代码表示;指令由操作码与地址码组成;
指令顺序存放执行,特殊条件下可以改变执行顺序
早期的冯诺依曼机以运算器为核心;现代计算机组织结构中以存储器为核心
存储程序的基本思想:将程序和原始数据编写好以后放入主存才能够执行;一旦程序启动执行,就无需操作人员干预,计算机自动执行,直到程序执行结束;
MAR与MDR应是存储器功能的一部分,但是现在计算机将其放到了CPU中;
计算机的多层次结构
下层是上层的基础,上层是下层的扩展;
软件与硬件没有明确的分界线,软件和硬件在逻辑上是等效的。
软件 | 硬件 | |||
---|---|---|---|---|
高级语言机器M4 | 汇编语言机器M3 | 操作系统机器M2 | 机器语言机器M1 | 微程序机器M0 |
编译程序 | 汇编程序生成机器语言 | 用机器语言解释操作系统 | 用微指令解释机器指令 | 硬件直接执行微程序 |
计算机的硬件组成
存储器
MAR 和 MDR 逻辑上位于主存,实际上位于 CPU,依靠总线与主存进行通讯。
按字编址:每个地址指向一个完整的字长
按半字编址:每个字节指向半个字长
CPU
运算器
ALU:算数逻辑单元,是运算器的核心;
MQ:乘商寄存器 ACC:累加器;
X:操作数寄存器;
PSW:程序状态寄存器
控制器
PC:程序计数器,存放当前欲执行指令的地址,可以自动加一形成下一条指令的地址,直接连接 MAR;
IR:指令寄存器,存放当前准备执行的指令,内容来自 MDR;指令中的操作码 OP(IR)送至 CU,指令中的地址码 AD(IR)送往 MAR,取操作数;
CU:控制单元。
CPU 区分数据和指令依靠指令周期的不同阶段
指令执行的数据流向
取指令阶段 (PC)→MAR M(MAR)→MDR (MDR)→IR
分析指令阶段 OP(IR)→CU
取数阶段 AD(IR)→MAR M(MAR)→MDR M(MDR)→ACC
计算机软件
三个级别的语言: 高级语言–> 汇编语言–> 机器语言
汇编程序(汇编器):将汇编语言翻译成机器语言;
解释程序(解释器):将源程序中的语句按照执行顺序逐句翻译成机器语言并立即执行;
编译程序(编译器):将高级语言程序翻译成汇编语言程序或机器语言程序;
从源程序到可执行文件的过程:
flowchart LR hello.c\n源程序\n文本 --预处理器--> hello.i\n修改过的源程序\n文本 --编译器--> hello.s\n汇编程序\n文本 --汇编器--> holle.o\n重定位目标文件\n二进制文件 holle.o\n重定位目标文件\n二进制文件 & printf.o\n库文件\n二进制 --链接器--> 可执行目标文件\n二进制
系统软件与应用软件
系统软件是保证系统高效、正确运行的基础软件,主要有操作系统 OS、数据库管理系统 DBMS、语言处理程序、分布式软件系统、网络软件系统、标准库程序、服务性程序等;
计算机的性能指标
字长:计算机进行一次整数运算,所能够处理的二进制数据的位数;与 CPU 内部寄存器、加法器位数有关,字长一般等于内部寄存器的位宽;
数据通路带宽:数据总线一次所能并行传送信息的位数
- 数据通路:各个子系统通过数据总线连接形成的数据传输路径称为数据通路;
- 数据总线是指 CPU 外部数据总线,与 CPU 内部寄存器位宽可能会不同;
主存容量:
MAR 的位数反映了可寻址的最大范围,但不一定是实际存储容量(例如,64位计算机,寻址空间很大,但是有的计算机接了8G内存,有的计算机接了16G内存);
运算速度:
响应时间:指从用户向计算机发送一个请求,到系统对该请求做出响应并获得它所需要的结果的等待时间。
- 通常包括 CPU 时间(运行一个程序所花费的时间)与等待时间(用于磁盘访问、存储 器访问、I/O 操作、操作系统开销等时间)。
吞吐量:系统在单位时间内处理请求的数量;
它取决于信息能多快地输入内存,CPU 能多快地取指令,数据能多快地从内存取出或 存入,以及所得结果能多快地从内存送给一台外部设备。这些步骤中的每一步都关系 到主存,因此,系统吞吐量主要取决于主存的存取周期。
主频和时钟周期:主频越高,计算机运算速度越快;
CPI:执行一条指令所需要的周期数;每条指令需要的周期数不同,因此指平均值;
IPC:每个时钟周期运行多少条指令,是CPI的倒数;
MIPS:每秒执行多少百万条指令数;该指标存在缺陷(指令集不同,其每条指令的功能也不同,复杂指令集的指令实现的功能更加复杂,消耗的时间也比精简指令集长,不能说明复杂指令集不如精简指令集);(从该指标可以猜测,指令执行以 us 为单位)
MFLOPS、GFLOPS、TFLOPS、PFLOPS、EFLOPS、ZFLOPS;
- MFLOPS:每秒执行多少百万次浮点数运算
- GFLOPS:每秒执行多少十亿次浮点数运算
- TFLOPS:每秒执行多少万亿次浮点数运算
- PFLOPS:每秒执行多少千万亿次浮点数运算
- EFLOPS:每秒执行多少百亿亿次浮点数运算
基准程序:专门用来进行性能评价的一组程序;该指标存在缺陷(因为有可能指令集专门针对某种运算进行优化,导致性能表现很好;);
描述存储容量时,K 表示 210,M 表示 220,G 表示 230,T 表示 240;
描述频率时,K 表示 103,M 表示 106,G 表示 109,T 表示 1012;
- 标题: 第一章 计算机系统概述
- 作者: HuxJiang
- 创建于 : 2023-07-06 14:02:09
- 更新于 : 2025-04-14 17:41:50
- 链接: https://github.com/HuxJiang/2023/07/06/计算机组成原理/第一章-计算机系统概述/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。