最終更新日:2026年9月20日
fe fe-technology computer-architecture memory
まず結論
記憶階層では、一般にCPUに近い役割の記憶ほど高速で小容量、離れるほど低速で大容量になります。
基本情報技術者試験では、次の順序を押さえると選択肢を切りやすくなります。
```text 高速 ↑ CPUレジスタ L1キャッシュ L2キャッシュ L3キャッシュ 主記憶 SSD HDD ↓ 低速 ```
今回のように、
- CPUの2次キャッシュ
- CPUのレジスタ
- 磁気ディスク
- 主記憶
が並んでいれば、最もアクセス時間が短いのはCPUレジスタです。
直感的な説明
机の上で仕事をすると考えてみます。
```text 手元に持っているメモ → レジスタ
机の引き出し → キャッシュ
本棚 → 主記憶
倉庫 → SSD / HDD ```
よく使うものほど近くに置いておけば、すぐ取り出せます。
同じようにコンピュータでも、CPUが頻繁に使う情報ほど高速な記憶領域に置くことで、処理を速くしています。
定義・仕組み
CPUレジスタ
CPU内部にある、非常に高速で小容量の記憶領域です。
演算に使うデータやアドレス、命令に関する情報などを一時的に保持します。
```text CPU内部 → レジスタ → 最も高速 ```
詳しくは、CPUレジスタの役割で整理しています。
キャッシュメモリ
キャッシュメモリは、CPUと主記憶の速度差を埋めるための高速な記憶領域です。
一般に、
```text L1 → 最も高速・最小
L2 → L1より大きい・少し遅い
L3 → さらに大きい・さらに遅い ```
という関係になります。
詳しくは、キャッシュメモリとは?で確認できます。
主記憶
主記憶は、実行中のプログラムやデータを保持する領域です。
一般にDRAMが使われます。
```text CPU ↓ キャッシュ ↓ 主記憶 ```
という位置関係で理解すると分かりやすいです。
メモリ種類の違いは、DRAM・SRAM・フラッシュメモリ・ROMの違いで整理しています。
SSD / HDD
SSDやHDDは、電源を切ってもデータを保持する補助記憶装置です。
主記憶より大容量にしやすい一方、アクセス時間は長くなります。
```text 主記憶 → 実行中のデータ
SSD / HDD → 長期保存するデータ ```
磁気ディスクのアクセス時間は、磁気ディスクのアクセス時間で確認できます。
記憶階層の考え方
記憶装置には、速度・容量・コストのトレードオフがあります。
| 記憶装置 | 速度 | 容量 | 1ビット当たりのコスト |
|---|---|---|---|
| レジスタ | 非常に速い | 非常に小さい | 高い |
| キャッシュ | 速い | 小さい | 高い |
| 主記憶 | 中程度 | 大きい | 中程度 |
| SSD / HDD | 遅い | 非常に大きい | 安い |
この関係を、
```text 速い → 小さい → 高価
遅い → 大きい → 安価 ```
と整理すると、記憶階層を理解しやすくなります。
科目Aでどう出る?
科目Aでは、記憶装置のアクセス時間や速度順を問う問題として出ます。
まずCPUに近いものを探す
```text レジスタ → CPU内部
キャッシュ → CPUと主記憶の間
主記憶 → CPUの外側
SSD / HDD → 補助記憶 ```
したがって、速度の順は、
```text レジスタ ↓ キャッシュ ↓ 主記憶 ↓ SSD / HDD ```
と判断できます。
L1・L2・L3の順
キャッシュ同士では、
```text L1 → 最速
L2 → 次
L3 → その次 ```
と覚えます。
問題で「CPUの2次キャッシュ」と書かれていたら、L2キャッシュを指します。
レジスタよりは遅いですが、主記憶よりは高速です。
選択肢を切る判断表
| 問題文の表現 | 判断 |
|---|---|
| CPU内部で演算に直接使う | レジスタ |
| CPUと主記憶の速度差を埋める | キャッシュ |
| 実行中のプログラムやデータを保持 | 主記憶 |
| 電源断後も長期保存 | SSD / HDD |
どんな場面で使う?
記憶階層の考え方は、コンピュータの処理を高速化するために使われます。
例えば、CPUが毎回HDDから直接データを読むと、処理は非常に遅くなります。
そこで、
```text よく使うデータ → レジスタ・キャッシュ
実行中のデータ → 主記憶
長期保存 → SSD / HDD ```
と役割分担します。
よくある誤解・混同
CPUに物理的に近ければ必ず速い?
単純に物理距離だけで決まるわけではありません。
FEでは、
記憶階層としてCPUに近い位置の記憶ほど高速な傾向がある
と理解するのが安全です。
実際の速度は、回路構成、接続方式、CPU設計などにも左右されます。
主記憶はキャッシュより速い?
逆です。
```text キャッシュ → CPUと主記憶の速度差を埋めるための高速記憶
主記憶 → キャッシュより遅い ```
L2キャッシュはレジスタより速い?
通常はレジスタの方が高速です。
```text レジスタ → CPU内部で直接使う
L2キャッシュ → レジスタより大きいが、速度は遅い ```
SSDは主記憶より速い?
主記憶の方が高速です。
```text 主記憶 → 実行中のデータを高速に扱う
SSD → 永続保存 ```
SSDはHDDより高速ですが、主記憶とは役割も速度も異なります。
まとめ(試験直前用)
- 記憶階層は、高速・小容量・高価 ↔ 低速・大容量・安価の関係で考える
- 最も高速なのはCPUレジスタ
- キャッシュはCPUと主記憶の速度差を埋める
- L1 → L2 → L3の順に一般に遅く・大容量になる
- 主記憶はキャッシュより遅く、SSD/HDDより速い
- SSD/HDDは長期保存向け
- FEでは、レジスタ → キャッシュ → 主記憶 → SSD/HDDの順をまず押さえる
```text 最速 → レジスタ
次 → キャッシュ
その次 → 主記憶
長期保存 → SSD / HDD ```