レジスタとキャッシュメモリの違いとは?

最終更新日 2019年10月11日

レジスタとキャッシュメモリの違いとは何か

ROM, RAM,レジスタ,キャッシュとは〜制御工学の基礎あれこれ〜 には、レジスタとキャッシュメモリの違いについて、以下のとおり書かれています。(この記事の公開年月日は2018年10月4日)
これらメモリはアクセス速度と記憶容量の違いがあり、レジスタが最も高速でCPUに近い場所にあり、演算を高速にするための役割を持っています。 キャッシュはRAMへのアクセスを省略するために一時的に格納するためのメモリであり、こちらもアクセスは高速です。レジスタとキャッシュの違いは レジスタが演算を高速にするため、キャッシュはメモリアクセスを高速にするためという目的の違いもあります。
レジスタもキャッシュメモリも CPU 内部にありますが、両者にはアクセス速度、記憶容量、CPU までの距離、使用目的に違いがあり、キャッシュメモリの方がアクセス速度が遅く CPU までの距離が遠いですが、レジスタよりも容量が大きいようです。

CPU までの距離とは、CPU 内部にある演算を行う回路までの距離です。RAM とはメインメモリのことであり、メモリアクセスとはメインメモリへのアクセスのことです。

コンピュータのメモリ階層を理解する(2ページ目) | 日経 xTECH(クロステック) には、以下のとおり書かれています。(この記事の公開年月日は2016年11月9日)
 レジスタは汎用レジスタともいい、処理(演算)の直前もしくは直後のデータだけを一時的に保持します。プロセッサ内部のALUにもっとも近接して置く最高速・小容量のメモリ階層です。

(略)

 キャッシュメモリは、実行中の命令や使用中のデータの一部の一時格納用です。
プロセッサはCPU に限らず GPU 等、演算を行う演算装置の総称ですが、同記事では CPU を指していると思われます。プロセッサは、CPU を指すことが多いです。

ALU とは Arithmetic and Logic Unit の略であり、四則演算や論理演算を行う回路を指していると思われます。

レジスタとキャッシュメモリには、ALU までの距離、アクセス速度、容量、保持するデータに違いがあるようです。

よくあるご質問 −レジスタとキャッシュメモリ | ITパスポートのスペシャリストによるこっそり裏講義 には、以下のとおり書かれています。(この記事の公開年月日は2015年5月21日)
コンピュータの5大装置に当てはめるとすれば、

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

です。

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

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

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

キャッシュメモリはあくまでも、本来、主記憶に保存されるべきデータのうち、
よく使われるデータをCPUから読み出しやすい
(近い位置にある)場所に保存するためのメモリです。
「コンピュータの5大装置」とは、コンピューターを構成する基本的な5つの装置、演算装置、制御装置、記憶装置、入力装置、出力装置のことです。

演算装置と制御装置が一体になった装置を中央演算処理装置や CPU(Central Processing Unit)と呼びますが、単に演算装置と呼ぶこともあります。主記憶装置とは、メインメモリのことです。

物理的にはレジスタもキャッシュメモリも CPU 内部にありますが、レジスタは CPU 側にあり CPU が行う演算にとって最も必要性が高いデータを保持するようです。

キャッシュメモリはメインメモリ側にあり、CPU が行う演算にとって必要性が高いデータを保持しますが、レジスタに保持するデータよりは必要性が低いデータを保持するようです。


キャンペーン情報
マウスコンピューター
冬のボーナスセール icon
期間限定で大幅値引き!最大60,000円OFF!!(一部モデルのみ)
(11月20日迄)
DELL
・PRE-BLACK FRIDAYセール
Office付き秋の感謝モデルほか、デスクトップ製品がクーポンで最大18%Off
(キャンペーン実施中)
ドスパラ
・最大20%還元 冬のボーナスセール
特価パソコンをはじめ、お買得なパソコンパーツ、周辺機器を多数ご用意
(11月28日迄)
パソコン工房
・Windows 10乗り換え応援セール×総額3億円分早い者勝ち!
BTOパソコンやPCパーツ・周辺機器などがお得な価格
(11月26日迄)