本讲定位:二级的第一讲,也是一道分水岭。一级的计算机常识只考”硬件五大部件”“内存断电丢数据”这种大颗粒的东西;二级一上来就要求分清 RAM / ROM / Cache 三者的区别、说得出机器语言 / 汇编语言 / 高级语言的三代演进——颗粒度陡然变细。这部分与写代码毫无关系,纯靠背,但官方大纲把它排在知识块 1 和 2,真题里稳定占 2–4 道客观题(4–8 分),是二级最容易白拿的分。
对应官方大纲:二级知识块 1「计算机存储与网络」中的 ROM、RAM、CACHE 部分;知识块 2「程序设计语言」——程序设计语言分类、常见的高级语言。(计算机网络部分份量重、且与编程完全无关,单独放在二级第 02 讲。)
前置知识:一级第 01 讲(硬件五大部件、内存与外存、编译与解释的初步概念)。本讲是那一讲的加细版。
代码说明:本讲以概念为主,出现的代码均已用 g++ 11.5(
-std=c++11)编译运行验证。
第一道(单选):
下列存储器中,断电后数据不会丢失的是( ) A. RAM B. Cache C. ROM D. 内存条
第二道(单选):
下列关于程序设计语言的说法,正确的是( ) A. 计算机可以直接执行用高级语言编写的程序 B. 汇编语言是一种高级语言 C. 机器语言是计算机唯一能直接识别和执行的语言 D. 用 C++ 编写的程序不需要翻译就能运行
答案:第一道选 C,第二道选 C。
这两道题代表了本讲的两条主线:存储器谁丢数据谁不丢,语言分几代、谁能直接跑。学完本讲,这类题应当做到零失分。
计算机里的存储器不止一种,它们按速度和容量排成一个金字塔:
▲ 速度快、容量小、单价贵
│
┌───────────┐
│ 寄存器 │ 在 CPU 内部,最快
├───────────┤
│ Cache │ 高速缓冲存储器
├───────────┤
│ 内存 RAM │ 主存储器
├───────────┤
│ 外存 │ 硬盘、U 盘、光盘
└───────────┘
│
▼ 速度慢、容量大、单价便宜
⚠️ 必背的速度排序:
$$ \text{寄存器} \;>\; \text{Cache} \;>\; \text{内存(RAM)} \;>\; \text{外存(硬盘)} $$
容量排序正好相反。 这条排序几乎年年考。
这张表是本讲的核心,必须逐格背下来:
| RAM | ROM | Cache | |
|---|---|---|---|
| 全称 | Random Access Memory | Read Only Memory | 高速缓冲存储器 |
| 中文 | 随机存取存储器 | 只读存储器 | 高速缓存 |
| 能否写入 | 可读可写 | 只读(正常使用时不写) | 可读可写 |
| 断电后 | 数据丢失 | 数据保留 | 数据丢失 |
| 速度 | 中 | 慢 | 快(比 RAM 快) |
| 容量 | 大(GB 级) | 小 | 最小(MB 级) |
| 位置 | 内存条 | 主板上的芯片 | CPU 与内存之间 |
| 典型用途 | 运行中的程序和数据 | BIOS(开机自检程序) | 存放 CPU 最近常用的数据 |
三句话记牢: