記憶装置は,基本情報技術者試験をはじめとする情報処理技術者試験で頻出の重要分野です。主記憶装置と補助記憶装置の違いを,きちんと整理できていますか?
- 主記憶装置=CPUが直接読み書きできる(揮発性・高速・容量小)
- 補助記憶装置=長期保存用(不揮発性・低速・容量大)
このページは,初学者の方や,基礎を体系的に復習したい方に向けたまとめページです。
後半には練習問題も用意しています。速度や容量の違いにも注目しながら理解を深めていきましょう。
記憶装置とは(主記憶装置と補助記憶装置の全体像)
記憶装置は,プログラムやデータを記憶する装置です。記憶装置には,主記憶装置や補助記憶装置などがあります。これらは,それぞれアクセス速度や記憶容量が異なり,コンピューターでは,これらを組み合わせることにより効率的なメモリアクセスを実現しています。
主記憶装置と補助記憶装置の違いは,CPUが直接読み書きできるか,電源を切ってもその内容は失われないかにあります。主記憶装置はCPUが直接読み書きできる記憶装置であり,補助記憶装置(HDD・SSDなど)はデータを長期間保存するために使用します。
※ 揮発性…電源を切るとデータが消える性質
※ 不揮発性…電源を切ってもデータが消えない性質
記憶階層とは(速度・容量のトレードオフ)
記憶装置は,CPUと同じ速度で大容量なものが好ましいです。しかし,コストの問題や技術的な問題があり現実的ではありません。実際には,高速で小容量な記憶装置と低速で大容量な記憶装置を組み合わせて,全体の処理速度を向上させています。
記憶装置を,アクセス速度と記憶容量により分類すると次のようになります。
記憶媒体(ストレージメディア)とは
記憶媒体には,次のようなものがあります。
半導体記憶装置とは
半導体記憶装置には,RAM(Random Access Memory)とROM(Read Only Memory)があります。
| RAM | ROM | |
|---|---|---|
| 特徴 | 読み書き可能 | 基本的には読み出し専用(全消去や,書き込み,追記が可能なものもある) |
| 記憶保持 | 電源が切れると記憶内容は消える(揮発性) | 電源が切れても記憶内容は消えない(不揮発性) |
RAM(Random Access Memory)とは
RAMには,一定時間が経過するとデータが消えてしまうDRAM(Dynamic RAM)と,コンピューターの電源が切れるまではデータが消えないSRAM(Static RAM)があります。
※ VRAMという,画面表示の際に使用されるメモリもある
| DRAM | SRAM | |
|---|---|---|
| 特徴 | コンデンサに電荷を蓄えることにより情報を記憶する リフレッシュの必要あり | フリップフロップ回路によりリフレッシュ不要 |
| 速度 | リフレッシュにより速度は下がる | DRAMより速い |
| 消費電力 | 高い | 低い |
| コスト | 安価 | 高価 |
| 記憶容量 | SRAMより大きい | 構造が複雑なため大容量化に向かない |
| 用途 | 主記憶装置,ディスクキャッシュ | レジスタ,キャッシュメモリ |
※ リフレッシュとは,記憶内容保持のために行う再書き込みのことをいう
※ フリップフロップ回路とは,二つの状態(0と1)のいずれかを保持できる論理回路のことをいう
※ 実際に使用されるDRAMは,ほとんどがSDRAM(Synchronous DRAM)である。SDRAMは,クロック信号に同期して動作する
ROM(Read Only Memory)とは
ROMには,読み出し専用のマスクROMと書き換えが可能なPROM(Programmable ROM)があります。

| マスクROM | PROM | |
|---|---|---|
| 書き換え | 不可 | 可 |
| 特徴 | 製造時にプログラムやデータが書き込まれる | 何も記録されていない状態で出荷される |
| 用途 | ゲーム機のソフト,組込み機器など | - |
さらに,PROMには次のようなものがあります。
| EPROM | EEPROM | フラッシュメモリ | |
|---|---|---|---|
| 消去 | 紫外線で全消去(部分的に消去することはできない) | 電気(部分的に消去することも可) | 電気 (ブロック単位で部分的に消去することも可) |
| 書き込み | 電気 | 電気 | 電気 |
| 用途 | 開発途上のプログラムの書き込みなど | コンピューターの設定情報などを記憶するためなどに補助的に使用されることが多い | 携帯情報端末の内部ストレージ メモリーカード USBメモリ など |
※ EPROM(Erasable PROM)
※ EEPROM(Electrically Erasable Programmable ROM)
※ フラッシュメモリは,ストレージ(補助記憶装置)の記憶素子として急激に普及している。書込み回数は,一般的には,数百万回くらいが上限(フラッシュメモリは,書換えを繰り返すことによりデータの保持能力が低下する)
練習問題
問1 記憶装置について,次の①~④に答えよ。
① CPUが直接読み書きできる記憶装置を何というか?
② データを長期間保存するために使用する記憶装置は何というか?
③ ①の装置の特徴であり,電源を切るとデータが消える性質を何というか?
④ ②の装置の特徴であり,電源を切ってもデータが消えない性質を何というか?
① 主記憶装置
② 補助記憶装置
③ 揮発性
④ 不揮発性
問2 記憶階層について,高速な記憶装置の容量は小さく,低速な記憶装置の容量は大きいという特徴があるが,その理由を答えよ。
コストと性能のバランスをとるため
問3 半導体記憶装置について,次の①~④に答えよ。
① 読み書き可能なメモリを何というか?
② 基本的に読み出し専用のメモリを何というか?
③ ①のメモリの特徴であり,電源を切るとデータが消える性質を何というか?
④ ②のメモリの特徴であり,電源を切ってもデータが消えない性質を何というか?
① RAM(Random Access Memory)
② ROM(Read Only Memory)
③ 揮発性
④ 不揮発性
問4 RAMについて,次の①~⑥に答えよ。
① 記憶内容保持のためにリフレッシュを行う必要があるRAMは何か?
② フリップフロップ回路によりリフレッシュが不要なRAMは何か?
③ ①,②のメモリについて,速度が速いのはどちらか?
④ ①,②のメモリについて,高価なのはどちらか?
⑤ ①が使われる装置として何があるか?
⑥ ②が使われる装置として何があるか?
① DRAM(Dynamic RAM)
② SRAM(Static RAM)
③ ②(SRAM)
④ ②(SRAM)
⑤ 主記憶装置,ディスクキャッシュ
⑥ レジスタ,キャッシュメモリ
問5 次の①~⑤について,ROMの種類を答えよ。
① 書き換えができないROMは何か?
② 紫外線で消去するROMは何か?
③ 電気的に消去可能なROMは何か?
④ 電気的に消去可能で,ブロック単位で消去するROMは何か?
⑤ ④が使われる装置として何があるか?
① マスクROM
② EPROM
③ EEPROM
④ フラッシュメモリ
⑤ 携帯情報端末の内部ストレージ,メモリーカード,USBメモリ など
広告
レジスタとは(CPU内部の高速記憶)
レジスタは,プロセッサ(CPU)内部にある超高速で小容量な記憶装置です。 命令やデータ,アドレス(主記憶装置内のデータの保存場所)などを一時的に保存します。CPUの構成によりレジスタの数や種類,容量が異なります。
キャッシュメモリとは(CPU高速化の鍵)
キャッシュメモリは,CPUと主記憶装置の間(現在はCPUに内蔵されることが多い)に置かれることのある記憶装置です。レジスタよりは低速ですが,主記憶装置よりは,はるかに高速です。記憶容量は数kB~数MB程度です。使用頻度の高いデータを格納しておくことにより主記憶装置へのアクセスを減らすことができ,処理を高速化することができます。
※ CPUによっては,1次キャッシュ,2次キャッシュ,…,というように,アクセス速度や記憶容量の異なるキャッシュメモリを搭載しているものもある
※ キャッシュメモリが搭載されていないCPUもある(例:Celeronなど)
CPUからキャッシュメモリへのアクセスの仕組み
キャッシュメモリにデータがある場合の動き
キャッシュメモリにデータがない場合の動き
読み出すデータがキャッシュメモリにある場合は,主記憶装置へのアクセスは発生しないため,高速に処理することができます。
ヒット率とは(性能評価指標)
ヒット率とは,キャッシュメモリに必要なデータが存在する確率のことをいいます。ヒット率が高いと必要なデータを高速に読み出すことができます。逆に,キャッシュメモリに必要なデータが存在しない場合は,主記憶装置にアクセスすることになります。キャッシュメモリに必要なデータが存在しない確率(ミス率)はNFP(Not Found Probability)といいます。
- ヒット率
- =1-NFP
- NFP
- =1-ヒット率
ヒット率と,キャッシュメモリへのアクセス時間,主記憶装置へのアクセス時間が分かれば,メモリアクセスにかかる時間(実効アクセス時間)を求めることができます。
実効アクセス時間=
キャッシュメモリへのアクセス時間×ヒット率+主記憶装置へのアクセス時間×(1-ヒット率)
ミスペナルティとは
ミスペナルティとは,キャッシュメモリに必要なデータが存在しない場合に,主記憶装置からキャッシュメモリにデータをコピーするのにかかる時間のことをいいます。
命令キャッシュとは
命令キャッシュとは,呼び出される可能性の高い命令(過去に実行された命令など)を,キャッシュメモリにもたせておく仕組みをいいます。
広告
主記憶装置からキャッシュメモリへの書き込みの仕組み
キャッシュメモリに格納するデータは,バイト単位ではなく何バイトかをまとめた固定長のブロック単位で管理します(32バイト、64バイトなど)。
ダイレクトマップ方式とは
ダイレクトマップ方式では,ハッシュ関数を用いて主記憶装置のブロック番号からキャッシュメモリのブロック番号を求め,データを格納します。
ハッシュ関数を使用しますので,主記憶装置のブロック番号とキャッシュメモリのブロック番号は1対1に対応します。検索は容易ですが,衝突が起こりやすくヒット率は下がります。
※ ヒット率とは,CPUがキャッシュメモリにアクセスしたときに,必要なデータが存在する確率のことをいう(上記参照)
フルアソシアティブ方式とは
フルアソシアティブ方式では,キャッシュメモリの空いている任意のブロックにデータを格納します。
キャッシュメモリが一杯になるまで衝突は起こりません。しかし,データを検索する場合は,毎回,すべてのブロックを検索しなければならないので効率は下がります。
※ この方式は,実装コストが高いため限定的に用いられる
セットアソシアティブ方式とは
セットアソシアティブ方式では,キャッシュメモリを複数のグループに分け,各グループの空いている任意のブロックにデータを格納します。
ブロックの置き換え方式
衝突が起こった場合のブロックの置き換えには次のような方式があります。
| FIFO(First In First Out) | 最初にキャッシュメモリに読み込んだブロックを置き換える |
| LIFO(Last In First Out) | 最後にキャッシュメモリに読み込んだブロックを置き換える |
| LRU(Least Recently Used) | 最後に参照されてから最も長い時間が経過したブロックを置き換える |
| LFU(Least Frequently Used) | 参照回数の最も少ないブロックを置き換える |
| ランダム | ブロックをランダムに置き換える |
データの更新
CPUがキャッシュメモリのデータを更新した場合,主記憶装置のデータも更新しなければなりません。
ライトスルーとは
キャッシュメモリのデータと主記憶装置のデータを,同時に更新する。常に,キャッシュメモリの内容と主記憶装置の内容は一致するが,処理速度は低下する
ライトバックとは
キャッシュメモリのデータだけを更新する。主記憶装置のデータの更新は,そのデータが置き換わるタイミングで行われる。キャッシュメモリの内容と主記憶装置の内容が一致しないことがあるが,処理速度は速い
練習問題
問1 CPU周辺の記憶装置について,次の①~②に答えよ。
① CPU内部にある超高速で小容量な記憶装置を何というか?
② CPUと主記憶装置の間(現在はCPUに内蔵されることが多い)に置かれ,主記憶装置へのアクセスを減らし,処理を高速化する記憶装置を何というか?
① レジスタ
② キャッシュメモリ
問2 キャッシュメモリについて,次の①~④に答えよ。
① ある処理で,100回中80回キャッシュにデータが存在した場合のヒット率は?
② ①の場合のミス率は?
③ キャッシュメモリへの平均アクセス時間が10ns(ナノ秒),主記憶装置への平均アクセス時間が100ns,ヒット率が0.9の場合の実効アクセス時間は?
④ キャッシュメモリに必要なデータが存在しない場合に,主記憶装置からキャッシュメモリにデータをコピーするのにかかる時間のことを何というか?
① ヒット率 = 80 ÷ 100 = 0.8(80%)
② NFP(ミス率) = 1 - 0.8 = 0.2(20%)
③ 実効アクセス時間 = 10ns×0.9 + 100ns×(1-0.9) = 9ns + 10ns = 19ns
④ ミスペナルティ
問3 主記憶装置からキャッシュメモリへの書き込みについて,衝突が起こった場合のブロックの置き換え方式について,次の①~④に答えよ。
① 最初にキャッシュメモリに読み込んだブロックを置き換える方式は?
② 最後にキャッシュメモリに読み込んだブロックを置き換える方式は?
③ 最後に参照されてから最も長い時間が経過したブロックを置き換える方式は?
④ 参照回数の最も少ないブロックを置き換える方式は?
① FIFO(First In First Out)
② LIFO(Last In First Out)
③ LRU(Least Recently Used)
④ LFU(Least Frequently Used)
問4 CPUがキャッシュメモリのデータを更新する方式について,次の①~②に答えよ。
① キャッシュメモリのデータと主記憶装置のデータを,同時に更新する方式を何というか?
② キャッシュメモリのデータだけを更新する方式(主記憶装置のデータの更新は,そのデータが置き換わるタイミングで行われる)を何というか?
① ライトスルー
② ライトバック
広告
主記憶装置(メインメモリ)とは(CPUとの関係と特徴)
主記憶装置は,CPUが直接読み書きできる記憶装置です。キャッシュメモリよりは低速ですが,補助記憶装置よりは高速です。記憶容量は数GB程度です。レジスタやキャッシュメモリ同様,電源を切るとその内容は失われます(揮発性)。

メモリインタリーブとは
メモリインタリーブは,主記憶装置へのアクセスを高速化する技術です。主記憶装置を複数のメモリバンクに分割してデータを配置し,読み出す際には,その複数のメモリバンクに(ほぼ)同時にアクセスします。こうすることで,レイテンシを小さくすることができ,効率的にデータの読み出しができるようになります。
※ レイテンシ…データが読み出される際の待ち時間
主記憶装置の規格
主記憶装置の規格には次のようなものがあります。DDR5やDDR4など,各規格には互換性がありませんので,上位規格のメモリに乗り換える場合,CPUやマザーボードも交換しなくてはなりません。
| 規格 | メモリモジュール規格 | メモリチップ規格 | 転送速度 | クロック周波数 | 容量 |
|---|---|---|---|---|---|
| DDR5 | PC5-51200 | DDR5-6400 | 51.2GB/s | 6,400MHz | 8GB~32GB |
| PC5-44800 | DDR5-5600 | 44.8GB/s | 5,600MHz | 8GB~32GB | |
| … | … | … | … | … | |
| DDR4 | PC4-34100 | DDR4-4266 | 34.1GB/s | 4,266MHz | 4GB~16GB |
| PC4-25600 | DDR4-3200 | 25.6GB/s | 3,200MHz | 4GB~16GB | |
| … | … | … | … | … | |
| DDR3 | PC3-14900 | DDR3-1866 | 14.9GB/s | 1,866MHz | 4GB~16GB |
| PC3-12800 | DDR3-1600 | 12.8GB/s | 1,600MHz | 4GB~16GB | |
| … | … | … | … | … |
※ メモリモジュール規格の数値は転送速度を,メモリチップ規格はクロック周波数を示している
※ 現在はDDR5が主流になりつつある
練習問題
問 主記憶装置を複数のメモリバンクに分割してデータを配置し,読み出す際には,その複数のメモリバンクに(ほぼ)同時にアクセスすることで主記憶装置へのアクセスを高速化する技術を何というか?
メモリインタリーブ
広告
補助記憶装置とは(ストレージの実体と特性)
補助記憶装置も,プログラムやデータを記憶する装置です。主記憶装置よりも記憶容量は大きく,電源を切ってもその内容は失われません(不揮発性)。しかし,主記憶装置よりも低速で,CPUが直接読み書きすることはできません。
ハードディスク(HDD:Hard Disk Drive)とは
ハードディスクは,ディスク(プラッタ)に塗布してある磁性体の状態を変化させることによりデータを記録する装置です。

ハードディスクの構造
※ ハードディスクは複数のプラッタで構成され,データは各プラッタの両面にセクタ単位で記録される
- プラッタ
- データを記録する円盤
- セクタ
- ハードディスクの区画の最小単位で,データはこのセクタ単位に記録される
- トラック
- セクタ1周分の領域
- シリンダ
- 各プラッタの同じ位置のトラックの集まり
フォーマット(初期化,イニシャライズ)とは
ハードディスクを最初に使用するときなどに行う作業で,セクタやトラックの設定をしてデータを読み書きできるようにします。
ディスクキャッシュとは
ディスクキャッシュとは,主記憶装置とハードディスクなどの補助記憶装置の間に置かれる記憶装置のことをいいます(実際には,ハードディスクに内蔵されていたり主記憶装置の一部を割り当てたりします)。使用頻度の高いデータなどをディスクキャッシュに複製しておくことにより処理を高速化します。
記憶容量の計算方法
ハードディスクの記憶容量は次の式により求めることができます。
記憶容量(バイト)=
セクタ長(バイト)×1トラック当たりのセクタ数×1シリンダ当たりのトラック数×シリンダ数
アクセス時間の計算方法
ハードディスクへのアクセス時間は次の式により求めることができます。
アクセス時間=
平均位置決め時間+平均回転待ち時間+データ転送時間
※平均位置決め時間は,磁気ヘッドが目的のトラックへ移動するまでの時間の平均である。平均シーク時間ともいう
※平均回転待ち時間は,磁気ヘッドの真下に目的のセクタが来るまでの時間の平均で、プラッタが1回転する時間の半分になる
※データの転送時間は,目的のデータの読み書きの開始から終了までの時間である
SSD(Solid State Drive)とは
SSDは,記憶媒体にフラッシュメモリを用いた記憶装置です。ハードディスクは機械的に読み書きしますが,SSDは電気的に読み書きしますので高速です。衝撃や振動にも強いです。また,消費電力が少ない,小型化が可能といった特長もあります。しかし,フラッシュメモリは書き込みを行うたびに素子が劣化しますので,ある回数を超えると破損してしまいます(書き換え回数に制限があります)。
※ 2.5インチサイズのSSDはハードディスクと同じSATA接続で互換性がある
※ M.2のSSDはマザーボードに直接接続する。M.2にはSATA3.0接続のものと,PCIe3.0×NVMe接続のものがある。PCIe3.0×NVMe接続のSSDは,さらに高速である
TBW(Terabytes Written)とは
TBWはSSDに書き込める上限のデータ量をテラバイト単位で表したものです。累計の書き込みデータ量を計測し把握できるようになっています。
DWPD(Drive Writes Per Day)とは
DWPDは,メーカーの保証期間中,1日にドライブ全体を何回書き換えてよいかを示す指標です。たとえば,DWPD=10の場合,1日に記憶容量の10倍のデータを書き込んでも,保証期間が終わるまでに寿命を迎えることはない,という意味になります。
光学ディスク(Optical Disk)とは
光学ディスクは,データの読み書きにレーザー光を使用する記憶媒体です。CDやDVD,BDなどがあります。

CD(Compact Disc)とは
音楽用に開発された記憶媒体です。コンピュータ用としても普及しています。直径は8cmと12cmのものがあります。
| 種類 | 読出し | 書込み | 容量 | 備考 |
|---|---|---|---|---|
| CD-ROM | ○ | × | 650~700MB | 再生専用 |
| CD-R | ○ | 1回 | 追記型 | |
| CD-RW | ○ | 1,000回 | 書換型 |
DVD(Digital Versatile Disc)とは
CDよりも短い波長のレーザー光を使用することにより大容量化を実現しています。12cmのディスクの場合,片面1層4.7GB,片面2層8.54GB,両面1層9.4GB,両面2層17.04GBがあります。
| 種類 | 読出し | 書込み | 容量 | 備考 |
|---|---|---|---|---|
| DVD-ROM | ○ | × | 4.7~17GB | 再生専用 |
| DVD-R | ○ | 1回 | 追記型 | |
| DVD-R DL | ||||
| DVD+R | ||||
| DVD+R DL | ||||
| DVD-RW | ○ | 1,000回 | 書換型 | |
| DVD+RW | ||||
| DVD-RAM | ○ | 100,000回 |
BD(Blu-ray Disc)とは
DVDよりもさらに短い波長のレーザー光を使用することにより大容量化を実現しています。片面1層当たり25GBの記憶容量があります。
| 種類 | 読出し | 書込み | 容量 | 備考 |
|---|---|---|---|---|
| BD-ROM | ○ | × | 25~100GB | 再生専用 |
| BD-R | ○ | 1回 | 追記型 | |
| BD-RE | ○ | 1,000回 | 書換型 |
磁気テープとは
磁気テープは,テープ状のフィルムに磁性体を塗布した記憶媒体です。
DDS(Digital Data Storage)とは
DDSは,音声録音用の磁気テープであるDAT(Digital Audio Tape)をデータ記録用に流用したもので,データのバックアップなどに利用されています。
| 規格 | テープ長 | テープ幅 | 記憶容量 | |
|---|---|---|---|---|
| 非圧縮時 | 圧縮時 | |||
| DAT 160 | 154m | 8mm | 80GB | 160GB |
| DAT 320 | 153m | 8mm | 160GB | 320GB |
※ 現在は,規格の更新や対応機器の製造,販売は行われていない
練習問題
問1 次の①~②の各装置について,記憶媒体を答えよ。
① ハードディスク(HDD:Hard Disk Drive)
② SSD(Solid State Drive)
① 磁気
② フラッシュメモリ
問2 ハードディスク(HDD)について,次の①~②に答えよ。
① ディスクが1回転するのに10ms(ミリ秒)かかるとき,平均回転待ち時間は何msか?
② 平均位置決め時間が5ms(ミリ秒),平均回転待ち時間が3ms,データ転送時間が2msのハードディスクの平均アクセス時間は?
③ セクタ長が512バイト,セクタ数が100,トラック数が10,シリンダ数が100のハードディスクの記憶容量は?
① 平均回転待ち時間 = 10ms ÷ 2 = 5ms
② 平均アクセス時間 = 5ms + 3ms + 2ms = 10ms
③ 記憶容量 = 512バイト × 100 × 10 × 100 = 51,200,000バイト(51.2MB)
問3 SSDについて,次の①~②に答えよ。
① SSDがHDDよりも高速に動作する理由は何か?
② SSDの弱点は何か?
① 機械的動作がなく電気的にアクセスするため
② 書き込み回数に制限があること
問4 光学ディスク(Optical Disk)は何を使用してデータを読み書きする記憶媒体か?
レーザー光
まとめ
今回は,記憶装置について,全体像を意識しながらシンプル!?にまとめてみました。用語や種類が多く,覚えるのが大変に感じるかもしれませんが,ただ暗記するのではなく,「役割」や「位置づけ」を意識して理解することが大切です。記憶装置は,試験で頻出の重要分野です。一度で理解できなくても問題ありませんので,繰り返し読み返しながら,少しずつ整理していきましょう。
記憶装置は,プロセッサとのデータのやり取りとあわせて理解することで、理解が一気に深まります。
理解が進んだら,基本情報技術者試験の過去問題等にもチャレンジしてみてください。
また,コンピューター全体のつながりや性能評価の考え方を整理したい方は、こちらも確認しておきましょう。
※ このページでは読みやすさを考慮し「コンピューター」,「サーバー」など長音付きで表記していますが,試験では「コンピュータ」,「サーバ」と表記されます


