アキュムレータのまとめ情報

アキュムレータ』by Google Ads

            

アキュムレータ』の解説

アキュムレータ()は、コンピュータCPUレジスタの一種で、演算論理装置の演算結果を一時的に保持するレジスタである。アキュムレータのような役割のレジスタがないと、演算(加算、乗算、シフトなど)の結果を一々主記憶装置に書き込む必要があり、おそらく次の命令で即座にそれを読み出す必要が生じる。主記憶装置へのアクセスはレジスタに比べて時間がかかる。

アキュムレータ利用の典型例として、数列の総和の計算がある。アキュムレータの初期値をゼロにしておき、アキュムレータの値と数列上の各数値の加算結果をアキュムレータに保持する。数列の総和が求められた時点でアキュムレータの値を主記憶装置に書き込んだり、アキュムレータ以外のレジスタに書き込んだりする。

アキュムレータマシン

近年のCPUは多数のレジスタを持ち、そのほとんどを演算結果の格納用に使用できる。古いコンピュータ・アーキテクチャでは、命令セットでアキュムレータをオペランドとして明示的に指定することなく使っている。このようなマシンをアキュムレータマシンと呼ぶ。例えば、次のような命令である。

ADD memaddress

この命令は、memaddress のメモリ位置にある内容を読み出し、それをアキュムレータ上の値と加算し、結果をアキュムレータに格納する。命令上はアキュムレータは全く指定されていないが、この命令は暗黙のうちに必ずアキュムレータを使用する。アーキテクチャによっては、一部の命令で暗黙のアキュムレータを使用し、別の命令では明示的にレジスタを番号指定する。

x86マイクロプロセッサにおいて、32ビットの EAX レジスタ(あるいはその一部である AX や AL、さらには大きな数の乗算では別のレジスタである EDX も)は一部の演算命令(MUL や DIV)でアキュムレータとして暗黙のうちに使われる。しかし、他の演算命令では EAX は番号指定されるレジスタの1つに過ぎない。例えば、MUL ecx という命令では、ECX レジスタの内容と EAX の内容の乗算を行い、結果を EAX と EDX に分けて格納する(オーバフローを防ぐため)。しかし、ADD 命令は2つのオペランドを指定でき、ADD ecx, edx と書けば ECX と EDX を加算し、結果を ECX に格納する。

歴史

アキュムレータという名称は、accumulate(累算する)に由来する。

「我々の算術器官の第一の部品は…並列記憶器官であり、数を受け取ってそれを既に格納している数に加算する。また、その内容をクリアすることもでき、内容を他に格納することもできる。我々はこのような器官をアキュムレータと呼ぶ。これは計算機械としては昔からある原理であり、机上乗算器やIBMのカウンタやリレー計算機やENIACなどで採用されている」

(現代風に解釈すれば)実行可能な命令は次のようである。

  • アキュムレータをクリアし、メモリ位置 x にある数を加算する。
  • アキュムレータをクリアし、メモリ位置 x にある数を減算する。
  • メモリ位置 x にある数をアキュムレータの内容と加算する。
  • メモリ位置 x にある数をアキュムレータの内容から減算する。
  • アキュムレータをクリアし、別のレジスタの内容をアキュムレータにシフトさせる。

命令のニーモニックからは、アキュムレータとどう関わるのか(入力なのか出力なのか)はわからないことが多い。ドナルド・クヌースの仮想(抽象)コンピュータ MIX では、アキュムレータへのロードを行う命令(LDA)やアキュムレータから他へのストアを行う命令(STA)がある。

参考文献

  • Goldstine, Herman H., and von Neumann, John, "Planning and Coding of the Problems for an Electronic Computing Instrument", Rep. 1947, Institute of Advanced Study, Princeton. Reprinted on pp. 92-119 in Bell, C. Gordon and Newell, Allen (1971), Computer Structures: Readings and Examples, McGraw-Hill Book Company, New York. ISBN 0070043574}.

Category:CPU

アキュムレータ』に 関連する人気アイテム

自然で女の子受けのいい服を集めました

コーディネート

今女の子と飲んでるんだけど来ない?週末合コンどう?

アナタは突然の誘いにどんな服を着ていきますか?

こういうときにはは女の子目線で選んだコーディネートが一番。
着こなしが苦手な人にはファッションスタイルごと提案します。

今なら 10,500円 以上で送料無料。

アキュムレータ』by Google Search

レジスタ』の解説 by はてなキーワード

マイクロプロセッサ等のデジタル回路の内部にある、演算結果や実行状態(コンテキスト)の保持に用いる記憶素子。RAMなどの主記憶装置と比較して動作が極めて高速だが、容量が小さい。

一般的に使われる「○○ビットCPU」という表現は、このレジスタ記憶容量を表しており、例えば「32ビットCPU」とはレジスタビット幅が32bitであるCPUのことを指す。

レジスタにはアキュムレータ、スタックポインタプログラムカウンタなど専用の機能を持つ専用レジスタと、特に専用の機能を持たず汎用的なデータ保持に使用される汎用レジスタがある。

レジスタの状態を主記憶装置(通常はスタック領域)に保存しておき一時中断し、他の処理を実行させた後に元に戻すことで、一時中断した箇所からそのまま処理を再開することができる。これをコンテキストスイッチといい、擬似的に複数の処理を同時に実行すること(マルチタスク)を可能にしている。

This page is provided by Matome Project.
Contact information.