ITパスポート講座の講師ブログ

よくあるご質問 -レジスタとキャッシュメモリ

皆さん、こんにちは。

よく、レジスタとキャッシュメモリの違いが
よく分からないというご質問をいただきます。

どちらもCPUとの関わりで出てくるメモリですし、
実物を見る機会がない(想像だけで理解するしかない)ので、
なかなかイメージがわかない難解なモノですよね。

もちろん、レジスタとキャッシュメモリは異なります。
コンピュータの5大装置に当てはめるとすれば、

キャッシュメモリ:主記憶装置の一部
レジスタ:演算装置の一部

です。

私たちが入力したデータは主記憶装置に一時的に保存されます。
そして、そこから演算装置(CPU)に渡されて処理されます。

処理される途中でも、一時的に計算結果を保存する必要がある場合があります。
そのときにレジスタに保存しておきます。

また、次の処理に必要なデータが主記憶装置の
どこに保存されているかという情報もレジスタに保存されます。

キャッシュメモリはあくまでも、本来、主記憶に保存されるべきデータのうち、
よく使われるデータをCPUから読み出しやすい
(近い位置にある)場所に保存するためのメモリです。

ちなみに、ハードディスクにもキャッシュメモリが備えられており、
ハードディスクからよく読み出されるデータを一時的に保存しておいて、
またハードディスクに対して読出要求がきた場合に
ハードディスク内のキャッシュメモリからメインメモリに
転送することにより読み取り速度を上げ、全体的な処理速度を上げるためにも使われています。

以上のように、レジストとキャッシュメモリでは、
役割・位置づけともに異なります。