1.1 计算机系统基础知识
1.1.1 计算机系统硬件基本组成
- 计算机基本硬件组成:运算器、控制器、存储器、输入设备和输出设备。
- CPU(中央处理单元):硬件系统核心,由运算器、控制器、寄存器组和内部总线等组成,负责获取指令、译码并执行,实现程序控制、操作控制、时间控制、数据处理以及响应中断等功能。
1.1.2 中央处理单元
CPU的组成与功能
- 核心功能:执行指令、处理数据,并协调计算机各部件的工作。
- 具体功能:
- 程序控制:从内存中读取指令、分析指令,并按顺序执行。
- 操作控制:向计算机各部件发送控制信号,实现指令的操作。
- 时间控制:对各种操作进行时间上的定时,确保各部件协同工作。
- 数据处理:对数据进行算术运算和逻辑运算。
- 中断处理:响应外部设备的中断请求,暂停当前任务并进行处理。
运算器(ALU)
- 功能:完成算术运算和逻辑运算,对运算结果进行状态标记。
- 关键部件:
- 算术逻辑单元(ALU)
- 累加寄存器(AC)
- 数据缓冲寄存器(DR)
- 状态条件寄存器(PSW)
控制器(CU)
- 功能:从内存中读取指令,解析指令的操作码和地址码,生成控制信号控制各部件协同工作。
- 关键部件与工作流程:
- 指令寄存器(IR)
- 指令译码器(ID)
- 程序计数器(PC)
- 控制信号生成器
寄存器组
- 作用:暂存指令、数据和地址,访问速度远快于内存。
- 常见寄存器:
- 通用寄存器(GR)
- 程序计数器(PC)
- 指令寄存器(IR)
- 地址寄存器(AR)
- 数据寄存器(DR)
CPU的工作流程
- 取指令:CPU通过PC获取指令地址,从内存读取指令存入IR,PC自动递增指向下一条指令。
- 指令译码:ID解析IR中的指令,确定操作类型和操作数地址。
- 取操作数:根据指令地址码,从内存或寄存器中读取操作数。
- 执行指令:ALU按指令要求对操作数进行运算,结果存入寄存器或内存。
- 存储结果:将运算结果写回内存或寄存器,同时更新PSW状态标志。
CPU性能相关概念
- 主频(时钟频率):CPU的工作频率,主频越高,单位时间内可执行的指令数越多。
- 指令周期:执行一条指令所需的时间,与主频成反比。
- CPI(Cycles Per Instruction):执行一条指令所需的时钟周期数,用于衡量CPU的效率。
- IPC(Instructions Per Cycle):每个时钟周期可执行的指令数,与CPI互为倒数。
典型CPU架构示例
- CISC(复杂指令集计算机):如x86架构(Intel/AMD),指令集复杂,单条指令功能强大,但执行效率较低。
- RISC(精简指令集计算机):如ARM架构,指令集简单、功耗低,适合嵌入式设备和移动终端。
1.1.3 数据表示
一、 原码、反码、补码和移码
1. 原码 (Sign-Magnitude)
概念
最直观的表示方法。用最高位表示符号位(0
正1
负),其余位表示数值的绝对值。
- 正数:
0
+ 数值绝对值的二进制 - 负数:
1
+ 数值绝对值的二进制
特点
- 直观易懂
- 零的表示不唯一(+0和-0)
- 加减运算复杂
示例:+5 → 00000101-5 → 10000101(8位)
2. 反码 (Ones’ Complement)
概念
改进原码运算问题的方案。
- 正数:同原码
- 负数:
1
+ 数值位取反
特点
- 零仍不唯一
- 减法可转加法(需循环进位)
- 表示范围:-(2^(n-1)-1) ~ +(2^(n-1)-1)
示例:
+5: 0000 0101
-5: 1111 1010
3. 补码 (Two’s Complement) ★★★
概念
现代计算机标准整数表示法。
- 正数:同原码
- 负数:
1
+ 数值位取反+1
特点
- 零唯一
- 加减法统一为加法
- 表示范围:-2^(n-1) ~ +(2^(n-1)-1)
示例:
+5: 0000 0101
-5: 1111 1011
4. 移码 (Offset Binary)
概念
用于浮点数阶码表示。
移码 = 真值X + 偏移量K(通常K=2^(n-1))
特点
- 便于比较大小
- 无符号数形式
- 表示范围对称
对比总结:
特性 | 原码 | 反码 | 补码 | 移码 |
---|---|---|---|---|
符号位 | 最高位0/1 | 最高位0/1 | 最高位0/1 | 无显式符号位 |
零的表示 | +0/-0 | +0/-0 | 唯一0 | 唯一(-K) |
主要用途 | 历史/教学 | 历史 | 整数运算 | 浮点数阶码 |
运算便利性 | 差 | 中 | 优 | 不直接运算 |
表示范围 | -(2(n-1)-1)~+(2(n-1)-1) | 同左 | -2(n-1)~+(2(n-1)-1) | -2(n-1)~+(2(n-1)-1) |
关键点:
- 补码是整数运算标准
- 移码用于浮点数阶码比较
- 从原码→反码→补码的演进解决了运算统一性问题
1.1.4 校验码
传送门: 奇偶校验码、海明码、循环冗余校验码
1.2 计算机体系结构
1.2.1 计算机体系结构的发展
1.2.2 存储系统
计算机存储系统全面解析
一、存储器的层次结构
-
寄存器
- CPU内部,速度最快(纳秒级)
- 容量最小(KB级)
-
高速缓存(Cache)
- L1/L2/L3三级结构
- 速度逐级降低,容量逐级增大
-
主存储器(内存)
- DRAM技术
- GB级容量,百纳秒级延迟
-
外存储器
- SSD/HDD/光盘等
- TB级容量,毫秒级延迟
二、存储器的分类
1. 按位置
- 内存(主存)
- 外存(辅存)
2. 按介质
类型 | 代表器件 | 特点 |
---|---|---|
半导体 | DRAM/SRAM | 速度快 |
磁存储 | HDD | 容量大 |
光存储 | CD/DVD | 长期保存 |
三、相联存储器(CAM)
- 内容寻址方式
- 并行检索技术
- 应用于TLB等场景
四、高速缓存(Cache)
多级架构
层级 | 位置 | 延迟 | 容量 |
---|---|---|---|
L1 | CPU核心 | 1-3周期 | 32-128KB |
L2 | CPU芯片 | 10-20周期 | 256KB-2MB |
L3 | 多核共享 | 30-50周期 | 8-64MB |
五、虚拟存储器
- 分页管理机制
- 地址转换流程
- TLB加速技术
六、外存储器
主流类型对比
类型 | 代表 | 速度 | 容量 |
---|---|---|---|
SSD | NAND Flash | 微秒级 | TB级 |
HDD | 机械硬盘 | 毫秒级 | 10TB+ |
光存储 | 蓝光 | 秒级 | 100GB+ |