Skip to content

第一章 计算机系统概论 ​

1. 计算机系统的组成 ​

一台计算机从功能上看包括 5 个基本子系统:输入、输出、存储、控制、算术逻辑运算。

部件/系统作用常考点
运算器完成算术运算和逻辑运算核心部件是 ALU
控制器取指令、分析指令、发出控制信号不负责数据运算结果的存储
存储器存放程序和数据分为主存和辅存
输入设备向计算机输入信息如键盘、鼠标
输出设备输出处理结果如显示器、打印机

完整的计算机系统 = 硬件系统 + 软件系统。

2. CPU、主机、外部设备 ​

概念组成
CPU运算器 + 控制器
主机运算器 + 控制器 + 主存储器
外部设备输入设备 + 输出设备 + 外接辅助存储器
完整计算机系统硬件设备 + 软件设备

3. ALU、控制器和常见寄存器 ​

名称作用
ALU完成算术运算和逻辑运算
控制器解释指令并发出控制信号
程序计数器 PC存放下一条待执行指令的地址
指令寄存器 IR存放当前正在执行的指令
累加器 ACC暂存运算数据或运算结果

MIPS 速度指标

  • MIPS(Million Instructions Per Second)= 指令数 ÷ (执行时间 × 10⁶)
  • 评估计算机执行速度常用每秒执行的指令数作为依据
  • 例:执行 100 万条指令用时 0.5 秒 → MIPS = 1 / 0.5 = 2 MIPS

ALU 不是只做加法,也不是只做算术运算,也不负责长期存放运算结果。

4. 存储系统与存储单位 ​

单位含义
bit / 比特信息表示的最小单位,取值 0 或 1
Byte / 字节常用存储容量单位,1B = 8bit
KB1KB = 2^10B = 1024B
MB1MB = 2^20B
GB1GB = 2^30B

存储系统通常指主存和辅存:

  • 主存:可被 CPU 直接访问,速度较快,容量较小
  • 辅存:容量大、速度慢、断电可长期保存

5. 冯·诺依曼机基本思想 ​

冯·诺依曼机的核心思想是存储程序——程序和数据一样存放在存储器中,由计算机自动取出并执行。

特点说明
存储程序程序和数据都存放在存储器中
程序控制按程序规定自动执行
按地址访问存储器按地址访问
顺序执行一般按指令地址顺序执行,遇到转移指令可改变顺序

6. 软件系统 ​

类型例子作用
系统软件操作系统、编译程序等管理计算机资源,支持程序运行
应用软件文本处理程序、表格软件等面向具体应用任务

计算机只能直接识别和执行机器语言,需要借助编译程序等翻译软件把高级语言翻译成机器语言。

7. 性能指标和地址空间 ​

8 位微型机 + 16 位地址计算

例:8 位微型机(一次处理 8 位数据)若用 16 位表示地址:

  • "8 位"指数据宽度,不是地址位数
  • 地址空间 = 2^16 = 65536 个
  • 地址空间只与地址位数有关,与机器字长无直接关系

本章重点速记 ​

  • 5 子系统:输入/输出/存储/控制/算术逻辑运算
  • CPU = 运算器 + 控制器;主机 = CPU + 主存
  • 冯·诺依曼:存储程序 + 按地址访问 + 顺序执行
  • 软件分系统软件和应用软件;机器语言是计算机唯一直接识别的语言
  • MIPS = 每秒百万条指令
  • 地址空间 = 2^地址位数(与机器字长无关)

第二章 总线 ​

1. 总线概念与分类 ​

总线是连接多个部件的信息传输线,是各部件共享的传输介质。

分类方式类型连接对象/含义高频考点
按位置分片内总线CPU 内部各部件之间CPU 内部
系统总线CPU、主存、I/O 设备之间三大部件之间
通信总线计算机系统之间系统之间
按内容分数据总线传送数据属于系统总线
地址总线传送地址信息选择存储单元和 I/O 接口地址
控制总线传送控制信号和状态信号控制读写、响应等

2. 总线结构的优缺点 ​

  • 优点:便于增减外设,便于模块化设计,减少信息传输线
  • 缺点:共享介质,同一时刻不能有多个信息源同时传送(不是"地址、数据、控制信息不能同时出现")

3. 主设备、从设备与总线仲裁 ​

概念含义
总线主设备获得总线控制权,能主动发起总线操作
总线从设备被主设备访问,只能响应命令
总线仲裁多个主设备申请总线时,控制器进行判优

4. 集中式总线控制方式 ​

方式特点高频考点
链式查询结构简单,请求线少,优先级固定只有一条总线请求线;对电路故障最敏感
计数器定时查询通过计数器依次查询设备优先级取决于计数起点
独立请求每个设备有独立请求线和响应线响应最快;控制线多

要点:

  • 计数器定时查询:从 0 开始则设备号小优先,从终止点开始则机会相等
  • 独立请求:N 个设备有 N 个请求 + N 个响应信号
  • 链式查询:N 个设备只有一条请求线,对电路故障最敏感

5. 三总线结构与 PCI 总线 ​

三总线结构:I/O 总线、主存总线、DMA 总线(与按内容分的"数据/地址/控制总线"不同)。

PCI 总线:与处理器时钟频率无关的高速外部总线,支持自动配置,兼容性较好,系统中可有多条 PCI 总线。

6. 总线通信控制 ​

通信方式含义/特点高频考点
同步通信由统一时序控制,有统一时钟同步控制 = 统一时序
异步通信无统一时钟,靠应答信号协调不互锁速度最快

异步通信速度比较:不互锁 > 半互锁 > 全互锁(全互锁最慢但更可靠)。

7. 总线带宽计算 ​

总线带宽 = 每个总线周期传送的数据量 × 总线频率

例:总线周期并行传送 8B,时钟频率 66MHz → 带宽 = 8B × 66MHz = 528MB/s

注意:8B 不是 8bit;MHz = 10⁶;MBps 一般按 10⁶ B/s 算。

本章重点速记 ​

  • 系统总线:CPU、主存、I/O 之间;通信总线:计算机之间
  • 三种集中式控制:链式查询(一条请求线)/ 计数器定时查询(设备号小优先)/ 独立请求(响应最快)
  • PCI:与 CPU 时钟无关的高速外部总线,支持自动配置
  • 异步通信速度:不互锁 > 半互锁 > 全互锁
  • 带宽 = 每周期数据量 × 总线频率

第三章 存储器 ​

1. 存储器基础概念 ​

类型特点例子
高速缓存 Cache容量小、速度最快、成本最高CPU Cache
主存可被 CPU 直接访问,速度较快,容量较小RAM、ROM
辅存容量大、速度慢、成本低、可长期保存磁盘、U盘、光盘

主存 vs 辅存:主存小快贵,辅存大慢廉。

2. RAM、ROM 与常见存储芯片 ​

类型特点
RAM可读可写,通常易失
ROM只读或主要读,非易失
PROM可编程,但通常只能写入一次
EPROM可擦除可编程(紫外线擦除)

可编程的只读芯片不一定是可改写的

PROM 可编程但一般不能反复改写——这是常考的"看似对实则错"陷阱。

3. SRAM、DRAM、磁盘与刷新 ​

存储介质是否需要刷新说明
SRAM不需要刷新速度快,成本高,常用于 Cache
DRAM需要刷新集成度高,成本低,常用于主存
磁盘不需要定时刷新信息可长期保存

4. 半导体存储芯片材料特点 ​

类型特点
双极性半导体存储芯片速度快,但价格贵,功耗较大
MOS 存储芯片集成度高,成本较低,应用更广

双极性存储芯片速度比 MOS 快,但价格也贵。

5. 存取时间、存取周期 ​

概念含义
存取时间从启动一次存取操作到完成该操作所需的时间
存取周期存储器进行连续两次读/写操作所允许的最短时间间隔

6. 主存容量受什么限制 ​

最大主存容量主要受地址总线位数限制(n 位地址 → 最多 2^n 个地址空间),不是受指令中地址码位数限制。

7. 字长、存储容量与寻址范围 ​

核心公式:按字编址的寻址范围 = 存储容量 / 每个字的字节数

字长每字占多少字节
8 位1B
16 位2B
32 位4B
64 位8B
字长存储容量按字编址计算寻址范围
32 位256KB256KB / 4B64K
32 位64KB64KB / 4B16K
16 位64KB64KB / 2B32K
16 位1MB1MB / 2B512K

K/M 是数量级(不带 B)

按字编址算出来是 64K,不是 64KB。带 B 是字节数,不带 B 是个数(像 kg/km 一样)。

8. 存储芯片容量表示法 ​

M × N 位:M 个存储单元,每个单元 N 位。

  • 地址线数 = log₂(M)
  • 数据线数 = N

例:16K × 32 位 中,16K = 2^14,地址线 14 根;数据线 32 根;合计 14 + 32 = 46 根。

9. RAM 芯片引出线最少数目 ​

引出线数 = 地址线 + 数据线 + 控制线(CS、WE 等 2 根)

RAM 容量地址线数据线控制线最少引出线
512 × 8 位98219
32K × 8 位158225
128K × 16 位1716235

10. 地址空间计算 ​

地址空间 = 2^地址位数

例:8 位微型机用 16 位地址 → 2^16 = 65536 个。8 位指数据宽度,不是地址位数。

本章重点速记 ​

  • 主存小快贵,辅存大慢廉
  • DRAM 需要刷新,SRAM / 磁盘不需要
  • 双极性快但贵,MOS 集成高
  • 按字编址寻址范围 = 容量 ÷ 每字字节数(不带 B)
  • M × N 位:地址线 = log₂(M) 根,数据线 = N 根
  • 引出线 = 地址线 + 数据线 + 控制线(一般 2 根)

第四章 输入输出系统 ​

1. I/O 系统基础 ​

I/O 系统负责主机与外部设备之间的信息交换。I/O 接口的作用:数据缓冲、速度匹配、格式转换、状态检测和控制命令传送。

2. 串行传输与并行传输 ​

方式特点适用场景
串行传输按位依次传送远距离
并行传输多位同时传送近距离高速

主机和终端串行传送数据时,需进行串-并 / 并-串转换(可用软件实现)。串行传输的特点是"线路成本低、远距离",不是"传输速度快"。

3. I/O 编址方式 ​

编址方式特点是否需要专门 I/O 指令
统一编址外设接口和主存共用地址空间不需要
独立编址I/O 地址空间和主存地址空间分开需要

统一编址:外部设备和主存共用 CPU 的整个访问存储空间,无需单独的 I/O 指令。

4. 主机与外设的数据传送方式 ​

方式基本特点CPU 参与程度
程序查询方式CPU 不断查询设备状态,串行工作最高
中断方式设备准备好后主动发中断请求较高
DMA 方式外设和主存之间直接传送数据较低
  • 程序查询方式:"除非计算机等待,否则无法传送"——效率低
  • 中断方式:CPU 不必一直等待外设,提高利用率

5. 中断响应过程中的硬件自动操作 ​

操作完成方式
程序计数器 PC 内容的保护和更新硬件自动完成
中断响应周期中,允许中断触发器置 0硬件自动完成

6. 中断向量与中断向量地址 ​

概念含义
中断服务程序入口地址中断服务程序开始执行的位置
中断向量通常存放中断服务程序入口地址
中断向量地址存放中断服务程序入口地址的地址

中断向量地址 ≠ 中断服务程序入口地址本身,而是"入口地址的地址"。

7. DMA 方式 ​

  • 适合高速外设和大批量数据传送
  • CPU 只在传送前初始化,传送中由 DMA 控制器接管总线
  • DMA 不能完全取代中断方式(开始 / 结束 / 异常处理仍需中断配合)

8. DMA 的周期窃取 / 周期挪用 ​

周期窃取:DMA 控制器在需要访问主存时,暂时占用一个存储器存取周期(不是指令周期、CPU 周期、总线周期)。

概念含义
周期挪用常用于 DMA 输入输出
周期窃取DMA 窃取一个存取周期

9. 四种 I/O 方式对比 ​

I/O 方式数据传送特点CPU 是否等待适用情况
程序查询方式CPU 主动查询设备状态经常等待简单低速设备
中断方式设备准备好后通知 CPU不必一直等待随机、低速或中速
DMA 方式主存和外设直接传送CPU 参与少高速、大批量

程序查询:CPU 与设备串行工作;中断:减少等待;DMA:适合高速但不取代中断

本章重点速记 ​

  • 串行:远距离、成本低;并行:近距离、高速
  • 统一编址:无需专门 I/O 指令;独立编址:需要
  • 程序查询:CPU 与设备串行工作,效率低
  • 中断方式:PC 保护与更新由硬件自动完成
  • 中断向量地址 = 入口地址的地址(不是入口地址本身)
  • DMA 适合高速大批量,但不能完全取代中断
  • 周期窃取 = 窃取一个存取周期

第五章 计算机的运算方法 ​

1. 数制转换与大小比较 ​

进制例子转换要点
二进制(101001)2按 2 的权展开
八进制(52)8一位八进制 = 3 位二进制
十六进制(2B)16一位十六进制 = 4 位二进制

例:(101001)2 = 41,(52)8 = 42,(2B)16 = 43,最小的是 (101001)2。

2. 原码、反码、补码、移码 ​

表示方法正数表示负数表示0 的表示
原码符号位 0,数值位为真值绝对值符号位 1,数值位为真值绝对值有 +0 和 -0
反码与原码相同符号位不变,数值位按位取反有 +0 和 -0
补码与原码相同反码末位 + 10 唯一
移码真值加偏置值,常用于阶码与补码符号位相反、数值位相同0 唯一

真值 0 表示形式唯一的是补码和移码。

3. 定点整数和定点小数的表示范围 ​

  • 整数定点机:原码、反码、补码均可表示 -1
  • 小数定点机:只有补码能表示 -1([x]补 = 1.000...0 表示 -1)
  • n 位补码整数范围:-2^(n-1) ~ 2^(n-1)-1
  • n+1 位定点数(1 符号位 + n 数值位):
    • 整数 0 ≤ |N| ≤ 2^n - 1
    • 小数 0 ≤ |N| ≤ 1 - 2^-n

4. 补码转换与位数判断 ​

负数补码:先写正数二进制 → 按位取反 → + 1。求 [-X]补 时,也可对 [X]补 直接取反 + 1。

真值8 位补码十六进制
-271110 0101E5H
-391101 1001D9H
560011 100038H

判断位数:-2^(n-1) ≤ x。例:x = -8192 = -2^13,至少需 14 位。

5. 补数、求负和移码 ​

  • 模 M 系统中,-x 的补数 = M - x
  • 移码与补码:同一数值,符号位相反,数值位相同

6. 补码加减运算和溢出判断 ​

补码加减法:符号位一起参加运算,最高位进位通常丢弃。X - Y = X + (-Y)。

方法判断规则
符号判断法两个同号数相加,结果变号 → 溢出
进位判断法最高有效数值位进位与符号位进位不同 → 溢出
变形补码法结果两个符号位不同 → 溢出

变形补码要点

两个符号位不同才是溢出,相同则不是。

7. 逻辑移位和算术移位 ​

移位方式左移右移
逻辑移位低位补 0高位补 0
算术移位低位补 0,符号位按规则保留高位补符号位

8. 浮点数基础 ​

N = 尾数 × 基数^阶码,阶码决定范围,尾数决定精度。

规格化浮点数:

  • 正数补码尾数:0.1xxx...
  • 负数补码尾数:1.0xxx...

9. 浮点数上溢、下溢 ​

情况机器处理
上溢停止运算,进行溢出中断处理
下溢继续运行,结果按机器零处理

10. 浮点数最接近 0 的负数 ​

16 位浮点数,阶码 7 位含 1 位阶符,尾数 9 位含 1 位数符。

  • 原码:最小负阶码 -63,最小尾数绝对值 2^-8 → -2^-71
  • 补码:最小负阶码 -64,最小尾数绝对值 2^-8 → -2^-72

本章重点速记 ​

  • 真值 0 表示唯一:补码、移码
  • 小数定点机只有补码能表示 -1
  • 补码求负:[X]补 取反 + 1;移码 = 补码符号位取反
  • 补码溢出:同号相加变号 / 变形补码两符号位不同
  • 算术右移补符号位
  • 浮点规格化:正 0.1xxx,负 1.0xxx
  • 上溢停机中断,下溢按机器零处理

第六章 指令与寻址方式 ​

本章核心:① 怎么找操作数(寻址 → 算 EA) ② 怎么算指令字长

1. 指令基本组成 ​

指令 = 操作码 + 地址码

  • 操作码:做什么(加/减/跳转...)
  • 地址码:操作数在哪

2. 寻址方式 → 算有效地址 EA ​

寻址方式EA 公式一句话理解
立即寻址操作数在指令里最快,数据就在指令里
直接寻址EA = D形式地址 D 就是 EA
间接寻址EA = (D)D 单元里装的才是 EA
寄存器寻址数据在寄存器地址码短,速度快
寄存器间接EA = (R)寄存器里装的是地址
基址寻址EA = (BR) + D基址寄存器 + 偏移
变址寻址EA = (IX) + D变址寄存器 + 偏移
相对寻址EA = (PC) + DPC + 位移量

速度排序:立即 > 寄存器 > 直接 > 间接

隐含寻址(ACC)

  • 操作数位置由指令隐含规定,无需显式地址字段
  • 例:单地址指令中第二操作数隐含在 ACC(累加器) 中
  • 特点:节省地址字段长度,常见于累加器型指令系统

大小端存储

  • 大端:高字节存低地址("大大在上")
  • 小端:低字节存低地址("小小在下")
  • 例:32 位整数 0x12345678 从低地址到高地址
    • 大端:12 34 56 78
    • 小端:78 56 34 12

寄存器-存储器型寻址空间

  • 操作数可来自寄存器或存储器
  • 例:ADD R1, M[2000H] —— 一操作数在寄存器 R1,另一操作数在存储器 2000H 单元
  • 寻址空间 = 寄存器数 + 存储单元数
  • 与纯寄存器型 / 纯存储器型指令系统的区别:操作数来源不唯一

3. 相对寻址位移量(高频坑点) ​

位移量 = 目标地址 − 取完指令后的 PC

例:PC=2009H,2 字节指令,跳转目标 2000H

  • 取完 2 字节:PC = 200BH
  • 位移 = 2000H − 200BH = −0BH

坑:是"取完指令后"的 PC,不是取指前。

4. 指令格式位数计算 ​

核心公式:指令字长 = 操作码位数 + 寻址特征位数 + 地址码位数

项目计算
操作码位数⌈log₂(指令条数)⌉(向上取整)
寻址特征位数⌈log₂(寻址方式种数)⌉
地址码位数log₂(直接寻址范围)

例 1:98 种操作,指令字长 16 位,6 种寻址方式

  • 操作码:⌈log₂ 98⌉ = 7 位;寻址特征:⌈log₂ 6⌉ = 3 位;地址码:16−7−3 = 6 位

例 2:156 条指令,一地址格式,直接寻址 64K 存储单元

  • 操作码:⌈log₂ 156⌉ = 8 位;地址码:log₂ 64K = 16 位;指令字长:8+16 = 24 位

几地址 = 地址字段数:一地址 ×1,二地址 ×2,三地址 ×3

一地址例外:1 个字段 + 1 个隐含 ACC = 2 个操作数

本章重点速记 ​

  • 寻址速度:立即 > 寄存器 > 直接 > 间接
  • 相对寻址位移量 = 目标地址 − 取完指令后的 PC
  • 指令字长 = 操作码 + 寻址特征 + 地址码位数
  • 隐含寻址:操作数隐含在 ACC
  • 大小端:小端 = 低字节存低地址
  • 寄存器-存储器型:寻址空间 = 寄存器数 + 存储单元数

第七章 CPU 的结构和功能 ​

本章核心:① CPU 怎么取指令 ② 流水线公式 ③ 微程序控制器

1. CPU 基本组成 ​

部件作用关键点
ALU算术运算 + 逻辑运算不是指令译码
控制器 CU分析指令 + 发出控制信号控制各部件协调
寄存器组暂存指令/地址/数据在 CPU 内部,速度快
PC下一条指令地址取指时送 MAR
IR当前正在执行的指令从 MDR 送来
MAR主存地址接地址总线
MDR主存数据接数据总线

2. 指令周期数据流 ​

取指周期 ​

PC → MAR → 地址总线 → 主存 → 数据总线 → MDR → IR,同时 PC+1 → PC

步骤说明
PC → MAR待取指令地址送 MAR
MAR → 地址总线 → 主存按地址访问主存
CU 发读命令控制主存读出
主存 → 数据总线 → MDR指令送入 MDR
MDR → IR指令送入指令寄存器
PC+1 → PC指向下一条

中断周期 ​

保存断点:断点地址 → MAR → 主存,PC → MDR → 主存 最后:中断入口 → PC

取指是读,中断保存断点是写。

3. 中断服务入口地址 → 找法 ​

方法含义
硬件向量法由硬件提供入口地址
软件查询法程序查询中断源

注意:这是入口地址的找法,不是总线仲裁中的"链式查询"等概念。

4. 微程序控制 ​

四级概念:

概念含义
微命令最基本控制命令
微指令若干微命令组成
微程序若干微指令组成(实现一条机器指令)
控制存储器存微程序的存储器

微程序存放在控制存储器(ROM)

  • 控制存储器用 ROM 实现,掉电不丢失,开机即可读取
  • 每条机器指令对应一段微程序,存放在控制存储器中
  • 控制器工作时,从 ROM 中读出对应微程序,发出相应控制信号
  • ROM 只读特性保证微程序不会被破坏

微程序控制器 vs 硬布线控制器

特性微程序控制器硬布线控制器
实现方式微程序 + ROM组合逻辑电路
速度较慢(需读 ROM)较快
规整性规整、易修改不规整、难修改
适用CISC 复杂指令RISC 精简指令

5. 指令流水线 ​

核心公式:n 条指令,k 级流水,每阶段 t → 总时间 = (k + n − 1)t

情况公式
不采用流水(每条 2t)2nt
二级流水(k=2)(n + 1)t

例:10 条指令,二级流水 = (2+10−1)t = 11t;不流水 = 20t

6. 地址空间 ​

n 位地址 → 地址空间 = 2^n

例:8 位微型机用 16 位地址 → 2^16 = 65536

坑:8 位微型机的"8 位"指数据宽度,不是地址位数。

本章重点速记 ​

  • CPU = ALU + CU + 寄存器组
  • 取指:PC → MAR → 主存 → MDR → IR,PC+1
  • 中断:保存 PC → 写主存 → 中断入口 → PC
  • 流水线:n 条 k 级流水 = (k+n-1)t
  • 控制存储器 = ROM,存微程序
  • 硬布线控制器速度更快;微程序控制器更易修改