Subsections
コンピューターは,おもに計算をするCPUとプログラム(命令とデータ)を格納するメモリ
から構成される.CPUとメモリーの間で,命令やデータをやりとりして,プログラムを実
行する.
計算を司るCPUの中にも,容量は小さいながらもレジスターと呼ばれる記憶装置がある.
計算をするためにはある程度の記憶が必要である.教科書を読み理解するときの人間の動
作を考えると分かりやすい.この場合,教科書がメモリーで脳がCPUに対応する.内容を
理解するためには単語を一時的に記憶しているはずで,その記憶する場所がレジスターと
考えればよい.
ここで,第一回の講義で述べたコンピューターの原理を示すチューリングマシーン(図
1)について,思い出して欲しい.明らかに,書き換え可能なテー
プがメモリー,オートマトンがCPUを表している.オートマトンの中にあり,内部状態を
表すものがレジスターである.
CPU内にある小さな記憶装置がレジスターである.ここにはCPUで計算するデータや計算
結果を一時的に記憶する.
以前述べたように,コンピューターのプログラムはデータと命令から構成される.この命
令とデータは,実行時に主記憶装置(メインメモリ)に格納される
2.CPUと主記憶装置は,図
2のような関係になっ
ている.CPUは主記憶装置のアドレスを指定することにより,主記憶装置に格納されてい
るデータを取り出す.そして,それはレジスタに記憶し,その中身に従い,処理する.処
理された結果ももちろん,レジスタに記憶する.レジスタの中身を主記憶装置に戻すこと
により,データの加工が完了する.
ここで,諸君が使っている実際のコンピューターでのプログラムの動作順序を示しておく.
- 補助記憶装置(ハードディスク等)からプログラムがメインメモリーにロードされ
る.この指令は,Operating System(OS)が出す.
- メインメモリーに格納されたプログラムの指示に従い,CPUが動作する.その動
作は,
- CPUがメインメモリーから命令を取り出す.命令を取り出すアドレスは,
CPUのプログラムレジスタに書かれている.
- 取り出した命令は,CPU内の命令デコーダーが内容を解析する.
- 解析された命令は,論理演算装置(ALU:arithematic logic unit)が
処理(計算)する.
- 各種のレジスターに処理の結果が格納される.
- プログラムレジスタの値を再設定する.
- 以上の動作をプログラム終了まで繰り返す.
である.
CASL IIの学習で1の補助記憶装置からメインメモリーへのロードは学習
の範囲外である.以降の講義では,2の動作について学習する.
このプログラムの実行方法からも,CPUの中にもデータを記憶する装置(レジスター)が必
要な理由が理解できるであろう.ところで,ここでプログラムレジスタという訳の分から
ないもが使われていることに気づく.これも教科書の読むときの動作を考えると分かりや
すい.プログラムレジスタは,脳の中に記憶される教科書のページ番号だと思えばよい.
どこまで読んだか憶えていて,そのページを読んだら次のページをめくるのである.
わざわざCPU内に作らなくても,メインメモリーの一部を使えば良いのでは,と考える人
もいるであろう.それでもコンピューターは可能であるが,今よりも複雑になるだろう.
また,CPU とメモリーのデータの間でのデータの交換回数が極端に増加して,動作が遅く
なるに違いない.
レジスタもデータなどを蓄えるので,メインメモリー同様,記憶装置の一種である.しか
し,以下のような違いがある.
- 主記憶装置
- CPUとは独立である.
- プログラム(命令とデータ)を格納する.
- 記憶容量が大きい.COMET IIの場合,1ワード(16ビット)のデータを65536
個,記憶できる.
- 番地を指定して目的のデータにアクセスする.
- レジスタ
- CPUの構成部品のひとつである.
- データを処理するための一時的な記憶場所である.また,処理結果も記憶
する.
- 記憶容量が小さい.COMET IIのようなものだと,1ワード(16ビット)のデータ
を20〜30個程度で済むであろう.
- 名前を指定して,目的のデータにアクセスする.
- 現実の装置の場合,CPUのデータのアクセススピードは,レジスターの方が
はるかに早い(C言語ではレジスタを使ったプログラムができる).
要するに主記憶装置は,いろいろなデータ(命令もデータの一種と考える)を蓄えるファイ
ルキャビネットのようなものである.一方,レジスタは,実際にCPU がデータを加工すると
きに一時的に記憶する場所と考えれば良い.レジスターにある加工されたデータをメモリー
にコピーすることにより,データ処理が完成するのである.
ホームページ:
Yamamoto's laboratory著者:
山本昌志
Yamamoto Masashi
2005-11-18