计算机组成导读

本文记录“计算机组成”课程的学习笔记,教材参考《计算机组成与系统结构》1

在开始学习之前推荐观看这两个最基本的计算机硬件科普视频:

为什么要学这门课?上上学期学习了“数字逻辑电路”,云里雾里;上学期学习了“计算机系统基础”,继续云里雾里。本学期开始学习“计算机组成原理”。如果用一句话来概括我对数字逻辑电路的理解,大概可以这样说:原来计算机是一个由“门电路”、“导线”和“时钟脉冲”组成的机器。如果用一句话来概括我对计算机系统基础的理解,大概可以这样说:原来计算机所有的活动都是由翻译过来的 01 序列驱动的。现在我们让 AI 模仿上面我对课程理解的概括逻辑,用一句话来概括计算机组成原理,ta 是这样回答的:原来计算机的高效运作是通过硬件架构的精妙设计,将复杂的指令和数据流转化为有序的电子信号运动来实现的

会收获什么?对计算机整体有一个宏观的把握,了解 CPU、存储和 I/O 设备的工作逻辑,尤其要熟悉单核 CPU 的工作逻辑。

注意:

  • 本书 ISA 采用 MIPS 指令系统。之前学习的 《计算机系统基础》 中 ISA 采用的是 IA-32 指令系统,也就是大名鼎鼎的 x86-64 指令系统的 32 位前身;
  • 为了形式化地描述 CPU 的运行逻辑,需要使用寄存器传送级 (register transfer level, 简称 RTL) 语言。本书 RTL 语言有以下规定:R [r] 表示通用寄存器 r 的内容,M [addr] 表示存储单元 addr 的内容;M [R[r]] 表示寄存器 r 的内容所指存储单元的内容;PC 表示 PC 的内容,M [PC] 表示 PC 所指存储单元的内容;SEXT [imm] 表示对 imm 进行符号扩展,ZEXT [imm] 表示对 imm 进行零扩展;传送方向用 \(\leftarrow\) 表示,即传送源在右,传送目的在左。

  1. 袁春风. 计算机组成与系统结构[M]. 3版. 北京: 清华大学出版社, 978-7-302-59988-3.