欢迎来到硬件与软件的世界!

你好!今天我们要深入探讨计算机科学的核心。你有没有想过电脑或手机内部究竟发生了什么?为什么有些应用程序执行得比较快?而你触控的屏幕和你执行的程序之间又有什么区别?

在这章节中,我们将探索计算机系统 (Computer Systems)。试着把电脑想象成一个人:硬件 (Hardware) 是肉体,而软件 (Software) 则是指导身体行动的思维与人格。读完这些笔记后,你就会明白它们是如何协作来创造这些科技奇迹的!

3.4.1 定义硬件与软件

首先,让我们理清定义。这两个术语是所有系统的基础。

硬件是计算机的实体部分。如果你踢得到、摸得到或拿得起来,它就是硬件! 例子:你的鼠标、屏幕、内部的电路板,甚至是你的键盘。

软件是一组指令或程序,用来告诉硬件该做什么。你无法触摸软件,因为它是以数据形式存在的。 例子:Minecraft、TikTok、Windows 11 或你的网页浏览器。

两者关系:硬件和软件有着“共生”关系。没有软件,硬件毫无用处(只是一个发光的金属盒);而没有硬件来运作,软件也无法发挥任何作用。

快速复习:剧场类比

想像一个剧院。建筑物、座位和舞台是硬件。正在上演的剧目和演员遵循的剧本则是软件。要呈现一场演出,两者缺一不可!

3.4.3 软件分类

并非所有软件都一样,我们主要将其分为两类:

1. 系统软件 (System Software): 这是计算机的“管家”。它的工作是运作硬件,并为其他应用程序提供执行平台。
例子:像 Windows、macOS 或 Android 这类的操作系统 (Operating System, OS)

2. 应用软件 (Application Software): 这些是帮助你执行特定任务的“工作人员”。
例子:用于写报告的文字处理程序、用于搜寻的网页浏览器,以及用来娱乐的游戏。

操作系统 (OS)

操作系统是最重要的系统软件。它负责处理所有“繁杂的工作”,让你不需要亲自操心。它管理:
处理器 (Processors): 决定 CPU 处理哪一项任务。
内存 (Memory): 追踪数据在 RAM 中的存储位置。
输入/输出设备 (I/O Devices): 与你的打印机、键盘和屏幕沟通。
应用程序 (Applications): 确保应用程序正确启动与结束。
安全 (Security): 管理密码和使用者账户。

重点总结:系统软件管理计算机;应用软件则为使用者执行任务。

3.4.5 系统架构:计算机的“大脑”

大多数计算机都遵循冯·诺依曼架构 (Von Neumann Architecture)。这是一个华丽的说法,意指计算机将程序指令和数据存储在同一个内存中。

中央处理器 (CPU)

CPU 就是计算机的大脑,它包含几个关键部分:
算术逻辑单元 (ALU): 处理所有数学计算(加减法)和逻辑运算(比较数字)。
控制单元 (CU): 像是“交通警察”,负责指挥数据流向。
时钟 (Clock): 发送脉冲信号,让所有组件保持同步。
总线 (Bus): 一组用来在组件之间传送数据的电线。
寄存器 (Register): 位于 CPU 内部、速度极快的微小存储空间。

提取-执行循环 (Fetch-Execute Cycle)

CPU 实际上是如何运作的呢?它遵循一个永不停歇的循环:
1. 提取 (Fetch): CPU 从主内存中获取下一条指令。
2. 解码 (Decode): 控制单元判断该指令的实际含义。
3. 执行 (Execute): CPU 执行该指令(例如将两个数字相加)。

什么决定了 CPU 的速度?

如果你的计算机有时觉得变慢了,别担心!效能通常取决于:
时钟速度 (Clock Speed): CPU 每秒能完成的循环次数(单位为赫兹 Hertz)。
核心数 (Cores): 核心越多,代表 CPU 可以同时处理越多事情。
缓存大小 (Cache Size): CPU 内部一小块非常快速的内存,用于存储经常使用的数据。

记忆小撇步:厨房类比

CPU: 主厨(负责工作)。
缓存 (Cache): 主厨的口袋(空间极小但随手可得)。
RAM: 工作台面(工作空间,但做完事情后会被清理)。
辅助存储设备 (Secondary Storage): 橱柜(容量极大,但要拿东西需要花时间)。

内存与存储设备

RAM (随机存取存储器): 这是主内存。它是易失性 (Volatile) 的,意思是当电源关闭时,里面的所有东西都会被删除!它存储当前正在使用的程序。

ROM (只读存储器): 这是非易失性 (Non-Volatile) 的(即使没有电源也能保留数据)。它存储计算机的“开机”启动指令。

辅助存储设备: 由于 RAM 是易失性的,我们需要辅助存储设备来长期保存文件。
磁性存储:(硬盘)便宜、容量大,但速度较慢且容易损坏。
固态硬盘 (SSD): 非常快,没有移动部件,但价格较高。
光学存储:(CD/DVD)便宜且便携,但容量小且速度慢。

常见误区: 许多学生认为“内存”和“存储设备”是一样的。请记住:内存 (RAM) 是用来处理当下的事;存储设备是用来存放明天还要用的东西。

3.4.2 布尔逻辑 (Boolean Logic)

计算机只懂 1 和 0(真与假)。我们使用逻辑门 (Logic Gates) 来处理这些信号。

NOT 门: 反转输入值。输入 1,输出 0。
AND 门: 只有当两个**输入都为 1 时,输出才为 1。
OR 门: 只要其中一个**输入为 1,输出就为 1。
XOR 门: 只有当两个输入不同**时,输出才为 1。

布尔表达式

在考试中,你可能会看到以下符号:
• A . B 代表 A AND B
• A + B 代表 A OR B
\(\overline{A}\)(上横线)代表 NOT A
• A \(\oplus\) B 代表 A XOR B

3.4.4 程序设计语言与翻译程序

人类不喜欢写 1 和 0,所以我们使用不同层级的语言。

高阶语言:(如 Python 或 C#)人类容易阅读和编写。它们具有“可移植性”,意味着它们可以在不同类型的 CPU 上执行。

低阶语言:(机器码和汇编语言)这些语言更接近 CPU 能理解的内容。机器码 (Machine Code) 只是二进制(1 和 0)。汇编语言 (Assembly Language) 使用像 LDAADD 这样的简短助记符。

翻译程序 (Translators)

因为 CPU 能理解机器码,所以我们需要翻译程序:
汇编器 (Assembler): 将汇编语言转换为机器码。
编译器 (Compiler): 一次性将整个高阶程序翻译成可执行文件。执行速度快,但除错较困难。
解释器 (Interpreter): 逐行翻译高阶程序代码。这对初学者来说非常棒,因为它会在错误发生的那一行立刻停止执行!

最终快速复习表

硬件: 实体零件。
软件: 程序与指令。
CPU: 负责提取、解码和执行指令。
RAM: 快速、易失性的工作内存。
辅助存储设备: 非易失性、长期存储设备。
翻译程序: 将高阶程序代码转换为机器码,以便 CPU 执行。

你一定没问题的!硬件和软件的内容看似很多,只要记住这些类比,你一定能表现出色!