学习指南

CPU结构与功能

计算机科学· 第4单元:处理器基础,主题1· 25 分钟阅读

1. CPU主要组件及其功能★★☆☆☆⏱ 8 min

CPU(中央处理器)是计算机的核心处理组件,负责执行所有程序指令。它有三个核心组成部分:算术逻辑单元(ALU)、控制单元(CU)和板载寄存器。

📘 定义

算术逻辑单元(ALU)

CPU中负责执行指令执行所需的所有算术运算(加、减、乘)和逻辑运算(与、或、非、比较)的组件。

例:

对寄存器中存储的两个值相加,或判断一个数是否大于另一个数。

控制单元(CU)协调CPU内部的所有活动。它对取出的指令进行译码,并向其他组件发送控制信号以触发所需操作。寄存器是直接内建于CPU的小型高速存储单元,用于存储当前正在立即处理的数据和地址。

📐 例题

一名学生认为ALU负责对指令译码。找出该错误,并陈述CPU主要组件的正确作用。

  1. 1

    步骤1:找出错误:指令译码不是ALU的功能,而是控制单元的功能。

  2. 2

    步骤2:陈述每个核心组件的正确作用:

  3. 3
    • ALU:对数据执行所有算术和逻辑运算
  4. 4
    • 控制单元:对指令译码,协调CPU运行活动
  5. 5
    • 寄存器:存储立即处理的临时数据、地址和指令

Exam tip:

在带示意图的题目中,一定要将每个组件与其正确功能对应,才能拿满分。

2. CPU专用寄存器★★★☆☆⏱ 7 min

寄存器是计算机系统中速度最快的存储器,远快于缓存或RAM。大多数寄存器在指令执行过程中具有专属特定作用,CIE 9618要求你熟记最常见专用寄存器的功能。

📘 定义

程序计数器(PC)

存放下一条要从主存取出的指令的内存地址的专用寄存器。每次取指后它会自动递增,指向序列中的下一条指令。

  • 内存地址寄存器(MAR): 存放CPU想要读写的内存位置的地址。

  • 内存数据寄存器(MDR): 存放刚从内存读出的数据,或等待写入内存的数据。

  • 当前指令寄存器(CIR): 存放刚取出、等待译码的当前指令。

  • 累加器(ACC): 存储ALU计算得到的中间结果。

📐 例题

解释CPU从主存读取数据时,MAR和MDR的作用差异。举一个例子说明。

  1. 1

    步骤1:阐明MAR的作用:MAR仅存储CPU需要访问的内存位置的地址,从不存储实际数据。

  2. 2

    步骤2:阐明MDR的作用:MAR将地址发送到主存后,该地址处的数据会返回并存储在MDR中,等待处理。

  3. 3

    步骤3:举例:如果CPU需要读取存储在内存地址 $20A 处的指令,地址 $20A 会被加载到MAR中。存储在 $20A 处的指令从内存取出后存储在MDR中,准备译码。

3. 系统总线★★☆☆☆⏱ 5 min

总线是共享的通信通路,用于在CPU组件之间,以及CPU和主存之间传输数据和控制信号。共有三种主要类型的系统总线,每种都有专属功能和传输方向。

📘 定义

系统总线

连接CPU与主存和其他外设的三类主要总线的统称。

  • 地址总线: 从CPU向主存传输内存地址。它是单向的(仅从CPU流向内存)。

  • 数据总线: 在CPU和主存之间传输实际数据。它是双向的(数据可双向流动)。

  • 控制总线: 从CU向其他组件传输控制信号(例如读/写信号)。它是双向的,允许状态信号返回CPU。

📐 例题

某条总线传输了一个表示CPU想要向特定内存地址写入数据的信号。这是哪种类型的总线?解释为什么不是另外两种总线。

  1. 1

    步骤1:识别信号类型:这是一个表示CPU正在执行的操作类型的控制信号。

  2. 2

    步骤2:匹配正确总线类型:该信号由控制总线传输。

  3. 3

    步骤3:解释为什么不是另外两种总线:地址总线仅传输内存地址,不传输控制信号。数据总线仅传输实际传输的数据,因此二者都不传输操作类型信号。

4. 取指-译码-执行周期★★★☆☆⏱ 5 min

取指-译码-执行周期是CPU对每条程序指令执行的重复流程。从系统开机到关机,它持续运行,在基础的非流水线CPU中,每个完整周期处理一条指令。

📘 定义

取指-译码-执行周期

CPU从主存获取、译码并执行每条程序指令的顺序流程。

📐 例题

概述基础CPU中一个完整取指-译码-执行周期的全部步骤顺序。

  1. 1

    取指步骤1:程序计数器(PC)中存储的地址被复制到内存地址寄存器(MAR)

  2. 2

    取指步骤2:MAR中地址对应的指令从主存取出,存入内存数据寄存器(MDR)

  3. 3

    取指步骤3:PC的值加1,指向待取出的下一条指令的地址

  4. 4

    译码步骤1:MDR中的指令被复制到当前指令寄存器(CIR)

  5. 5

    译码步骤2:控制单元对指令的操作码译码,确定需要执行的操作

  6. 6

    执行步骤:控制单元向相关组件发送控制信号执行指令,所有结果存储在累加器或寄存器中

Exam tip:

当被要求描述该周期时,一定要提到每个寄存器在每个步骤中的作用才能拿满分。

5. 常见陷阱

错误做法:

认为程序计数器存储当前指令,而非下一条指令的地址

原因:

常见的PC和当前指令寄存器功能混淆

正确做法:

PC = 下一条指令的地址;CIR = 存储当前正在译码的指令

错误做法:

认为地址总线是双向的,或数据总线是单向的

原因:

这是考试常考的总线方向性质混淆点

正确做法:

地址总线 = 单向(CPU → 内存);数据总线 = 双向(CPU ↔ 内存)

错误做法:

认为MDR存储内存地址

原因:

一直存在的MAR和MDR功能混淆

正确做法:

MAR存储内存地址;MDR存储从该地址取出的实际数据/指令

错误做法:

忘记提到取指步骤后递增PC

原因:

考生经常在考试答案中漏掉这个步骤,丢失容易拿的分数

正确做法:

一定要明确说明取指后PC会递增,以指向下一条指令

错误做法:

认为ALU对指令译码

原因:

常见的ALU和控制单元功能混淆

正确做法:

控制单元对指令译码;ALU执行算术和逻辑运算

6. 速查表

组件

核心功能

ALU

执行算术和逻辑运算

控制单元

对指令译码,协调CPU活动

PC

存储待取出的下一条指令的地址

MAR

存储待访问内存位置的地址

MDR

存储从内存读出/要写入内存的数据/指令

CIR

存储当前正在译码的指令

ACC

存储计算中间结果

地址总线

传输内存地址,单向

数据总线

传输实际数据,双向

控制总线

传输控制信号,双向

真题中的出现

AI 根据考纲规律估算的考点位置,请对照官方真题核实准确性。仅作复习重点参考。

  • 2022 · 12

    描述CPU核心组件

  • 2023 · 11

    解释取指-译码-执行周期

  • 2024 · 12

    比较系统总线类型

深入阅读

下一步

理解CPU结构与功能是所有处理器基础主题的核心知识,几乎每次都会在CIE 9618的试卷1中考查,通常是一道4-6分的简答题。掌握这里讲解的寄存器功能和取指-译码-执行顺序,是理解更高级的性能优化主题的基础,这些主题都建立在本内容之上。接下来你将学习CISC和RISC CPU设计的区别、缓存如何提高CPU访问速度,以及流水线和并行处理如何提高指令吞吐量。