计算机科学 9618 AS Level 学习笔记:第 3 章 - 硬件
欢迎来到激动人心的硬件世界!理解硬件就像学习计算机的“解剖学”——它是其他一切(软件、数据和通信)得以运行的基础。在本章中,我们将剖析构成任何计算机系统的核心组件,从强大的服务器到微小的嵌入式芯片,然后深入探讨电子技术的基本构建模块:逻辑门 (Logic Gates)。
如果某些术语看起来很复杂,不必担心;我们将使用简单的类比来确保你牢记每一个概念!让我们开始吧。
3.1 计算机及其组件
计算机组件的核心功能
每台通用计算机都需要四种主要功能才能运行。你可以把它们想象成系统的基本生存需求:
- 输入 (Input):将数据导入系统(例如:键盘、麦克风)。
- 处理 (Processing):操纵数据(由 CPU 完成——第 4 章将详细介绍!)。
- 主存 (Primary Memory / 立即存取存储器 IAS):CPU 当前所需的临时存储空间,用于快速访问数据和指令(例如:RAM)。
- 输出 (Output):向用户呈现结果(例如:屏幕、扬声器)。
- 辅助存储 (Secondary Storage):用于在断电后永久保存数据和程序的存储设备(例如:硬盘)。
深入了解存储器
主存:RAM 与 ROM
主存对于 CPU 高效工作至关重要。主要分为两类:
1. 随机存取存储器 (RAM)
- 用途:存储程序当前正在使用的数据和指令。
- 易失性:它是易失性的。类比:RAM 就像你的书桌。如果断电了,桌面上的一切都会丢失。
- 可读写性:数据可以持续地从 RAM 中读取和写入。
2. 只读存储器 (ROM)
- 用途:存储启动计算机所需的基本指令(引导程序/Bootstrap 或固件)。
- 易失性:它是非易失性的。类比:ROM 就像一本教科书——其信息是固定的,即使断电后也依然存在。
- 可读写性:通常只能从中读取,但现代类型可以更改(见下文)。
高级 ROM 类型
虽然 ROM 通常是“只读”的,但技术允许在特定条件下写入某些 ROM 芯片:
- PROM (可编程只读存储器):只能一次性写入,通常由制造商或开发人员使用专用设备完成。
- EPROM (可擦除可编程只读存储器):可以通过暴露在强紫外线 (UV light) 下进行擦除,然后重新写入。这个过程缓慢且繁琐。
- EEPROM (电可擦除可编程只读存储器):无需从电路板上取下,即可以电信号方式擦除和重写。这在现代设备中很常见(如存储 BIOS 设置)。
SRAM 与 DRAM
静态 RAM (SRAM) 和 动态 RAM (DRAM) 都是易失性的,但在速度、容量和成本上有显著差异:
- DRAM:使用会漏电的微小电容器存储数据,因此需要不断刷新(故称为“动态”)。它更便宜、密度更高(在更小空间内存储更多数据),通常用作主存 (Main System Memory)。
- SRAM:使用六个晶体管存储数据(它是“静态”的,因为不需要刷新)。它速度快得多、价格更昂贵且密度较低。SRAM 几乎专门用于 CPU 内部或 CPU 与主存之间的高速缓存 (Cache Memory),因为这些地方对速度的要求极高。
快速复习:
如果速度至关重要(如缓存),请使用 SRAM。
如果大容量和低成本至关重要(如主存),请使用 DRAM。
辅助存储设备
辅助存储是非易失性的,用于长期保存数据。
- 磁性硬盘驱动器 (HDD):利用旋转的磁盘盘片来存储数据。以大容量和相对低廉的成本著称。
- 固态硬盘 (SSD/闪存):使用非易失性闪存芯片(通常基于 EEPROM 技术)。访问速度更快、无移动部件、功耗更低,但通常比 HDD 更贵。
- 光盘读写器:利用激光读写数据(CD、DVD、蓝光)。适用于便携式和归档存储。
输入、输出与缓冲器
输入和输出设备
课程大纲要求掌握常见 I/O 设备的主要操作:
- 打印机 (激光/3D):激光打印机利用静电荷和碳粉将图像转印到纸上。3D 打印机采用增材制造技术,根据数字模型逐层铺设材料(如塑料)。
- 麦克风:将模拟声波转换为数字信号。
- 扬声器:将数字音频信号转换回模拟声波。
- 触摸屏:结合了输入和输出功能。用户直接通过触摸坐标提供输入。
缓冲器的重要性
缓冲器 (Buffer) 是主存 (RAM) 中的一小块区域,用于在以不同速度运行的两个组件或进程之间传输数据时暂时存放数据。
类比:想象一台打印机(较慢)从计算机(较快)接收数据。如果计算机一次性发送过多数据,打印机会崩溃。缓冲器就像数据的“候机室”,确保较慢的设备能以可控的速度接收数据。
嵌入式系统
嵌入式系统 (Embedded System) 是一种在大型机械或电气设备内部执行专用功能的计算机系统。
示例:智能洗衣机内部的微型计算机芯片,控制转速、温度和洗涤周期。
- 优点:体积小、功耗低、性价比高、高度可靠(仅执行一项任务)。
- 缺点:难以升级、资源有限(内存/处理能力)、初期编程复杂。
监控与控制系统
这些系统通常基于嵌入式硬件,并依赖于传感器 (Sensors) 和执行器 (Actuators)。
1. 监控系统:仅观察并记录数据。当数值超出预设范围时,它们会提醒人类。
示例:温度监控系统使用温度传感器测量室温并显示在屏幕上。如果温度过高,它会触发警报。
2. 控制系统:利用数据直接影响环境,无需人工干预,主要使用执行器。
示例:空调控制系统使用温度传感器,如果温度超过 25°C,它会激活执行器(压缩机)以开启冷却装置。
反馈 (Feedback) 的概念在控制系统中至关重要。系统不断测量输出(新温度)并将测量值反馈给处理器,以便处理器进一步调整执行器。
知识点 3.1:硬件确保了四大核心功能(输入、输出、处理、存储)得以实现。主存(RAM/ROM)速度快,而辅助存储是永久性的。控制系统通过执行器和反馈主动改变环境。
3.2 逻辑门与逻辑电路
逻辑门是数字电子电路的基本构建模块。它们接收一个或多个二进制输入(0 或 1),并基于简单的逻辑规则产生单一的二进制输出(0 或 1)。
逻辑门符号与功能
我们必须能够识别并理解六种核心门的符号和功能(及其真值表)。请记住,除非是 NOT 门,本节中的所有门都有两个输入。
1. NOT 门(非门/反相器)
- 功能:对单个输入取反。如果 A 为 1,则输出为 0。
- 符号:(想象一个指向右侧的三角形,输出端带有一个小圆圈,即“反相泡”。)
2. AND 门(与门)
- 功能:仅当所有输入均为 1 时,输出才为 1。
- 类比:我会去公园并且 (AND)吃冰淇淋。(要求两件事都发生。)
3. OR 门(或门)
- 功能:只要任何输入为 1(或两者都为 1),输出即为 1。
- 类比:我会看电视或者 (OR)读一本书。(要求至少有一件事发生。)
4. XOR 门(异或门)
- 功能:如果输入不同(一个为 1,另一个为 0),输出为 1;但如果两者都为 1,则输出为 0。
- 类比:我要么喝茶或者 (XOR)喝咖啡,但不能两者都喝。(排他性选择。)
5. NAND 门(与非门)
- 功能:AND 门的对立面。仅当两个输入都为 1 时,输出才为 0。
6. NOR 门(或非门)
- 功能:OR 门的对立面。仅当两个输入都为 0 时,输出才为 1。
记忆技巧:NAND 和 NOR 门的输出端总是有那个小圆圈(“反相泡”),表示它们分别是 AND 和 OR 的反向版本。
真值表 (Truth Tables)
真值表显示了逻辑门或电路所有可能的输入组合及其相应的输出。
真值表示例(OR 门)
| 输入 A | 输入 B | 输出 Q |
|:-------:|:-------:|:--------:|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
构建逻辑电路与表达式
你需要能够转换问题描述、逻辑表达式、逻辑电路和真值表。
第 1 步:逻辑表达式(数学表示)
逻辑表达式使用特定的运算符:
- AND:通常用圆点 (\(A \cdot B\)) 或乘号 (\(AB\)) 表示。
- OR:通常用加号 (\(A + B\)) 表示。
- NOT:用字母上方的横线 (\(\bar{A}\)) 表示,有时也写作 NOT(A)。
- XOR:用圆圈内的加号 (\(A \oplus B\)) 表示。
示例表达式:如果 A 为真,或者(B 为真且 C 为假),则输出 Q 为真。
逻辑表达式:\(Q = A + (B \cdot \bar{C})\)
第 2 步:构建逻辑电路
从表达式绘制电路时,请遵循运算优先级:先 NOT,再 AND,最后 OR。
对于表达式 \(Q = A + (B \cdot \bar{C})\):
- 处理 \(\bar{C}\):在输入 C 上使用一个 NOT 门。
- 处理括号内的项:将 B 和 \(\bar{C}\) 输入到一个 AND 门。
- 处理最终项:将 A 和 AND 门的输出输入到一个 OR 门,最终输出即为 Q。
第 3 步:从电路创建真值表
若要为复杂电路制作真值表(例如有三个输入 A, B, C),请列出所有 \(2^3 = 8\) 种可能的组合。创建中间门的临时输出列,直到得到最终输出 Q。
学习小贴士:处理 3 个输入 (A, B, C) 时,输入始终遵循以下二进制模式:000, 001, 010, 011, 100, 101, 110, 111。先把它写下来!
知识点 3.2:逻辑门是电子开关。请记住六种符号(NOT, AND, OR, NAND, NOR, XOR)。真值表将所有可能的二进制输入映射到最终输出。
完成硬件部分的学习,干得好!这些概念——从内存层次结构到基础逻辑门——构成了所有软件所依赖的关键基础设施。继续练习那些逻辑转换吧!