5大装置の役割
装置名 | 役割 | |
制御装置 | 中央処理装置(CPU) | コンピュータ全体の動作を制御するCPUの、他の装置の制御を行う部分。 |
演算装置 | 同上 | コンピュータ全体の動作を制御するCPUの、演算を行う部分。四則演算や論理演算を行う。この部分をALU(Arithmetic and Logic Unit)とよぶ。 |
記憶装置 | 主記憶装置 | プログラムやデータを一時的に記憶する装置。 ex)メインメモリ |
同上 | 補助記憶装置 | プログラムやデータを永続的に記憶する装置。 ex)ハードディスク、CD-ROM |
入力装置 | コンピュータにデータを入力する装置。 ex)キーボード、マウス、スキャナ | |
出力装置 | コンピュータのデータを出力する装置。 ex)ディスプレイ、プリンタ |
- 各装置の制御は必ず「制御装置」から命令される。
- データは「主記憶装置」を経由して各装置へ渡される。
- CPUと各装置を結ぶ回線を「バス」を呼ぶ。
ノイマン型コンピュータ
次の特徴を持つコンピュータのことを「ノイマン型コンピュータ」と呼ぶ。現在は大半がノイマン型コンピュータである。
- プログラム内蔵方式(プログラム格納方式)
- 逐次制御方式
プログラム内蔵方式
プログラムを事前に主記憶装置に読み込み、実行する方式。
CPUにより、補助記憶装置にあるプログラムが主記憶装置に読み込まれる。
逐次制御方式
命令を1つずつ取り出して、順番に実行していく方式。
主記憶装置のアドレス
主記憶装置(メインメモリ)にはアドレス(番地)がある。アドレスはメモリの区画ごとに振られており、アドレスを指定することでCPUはメモリ上の任意の場所を読み書きできる。
メインメモリには、プログラム自体の他、データや処理中の計算結果などが保持される。
CPUのレジスタ
CPUにはレジスタと呼ばれる記憶装置がある。(主記憶装置とは別)
レジスタ名 | 役割 |
プログラムカウンタ | 次に実行する命令が入っているメインメモリのアドレスを記憶する。 |
命令レジスタ | プログラムカウンタが取り出した命令を一時的に記憶する。 |
インデックスレジスタ | 配列の各要素の先頭アドレスを保持する。 |
ベースレジスタ | 配列の先頭アドレスを保持する。 |
アキュムレータ | 演算の対象となる数値や演算結果を記憶する。 |
汎用レジスタ | 一時的な値の保持やアキュムレータの代用に使う。役割は決められていない。 |
CPUが命令を実行する手順
ここは重要。しっかりと理解する必要あり。
- 命令の取り出し(フェッチ)
- プログラムカウンタから命令のアドレスを取得する
- 命令のアドレスにある命令(処理)を命令レジスタに記憶する
- 命令の解読
アドレス指定方式
CPUが扱う(レジスタが扱う)命令は機械語(0 or 1)である。
命令は「命令部」と「オペランド部」からなる。
アドレス修飾(アドレス指定)方式 | 説明 |
即値アドレス指定方式 | オペランド部に、値そのものが入っている方式。 |
直接アドレス指定方式 | オペランド部に、メインメモリ上のアドレスそのものが入っている方式。 直接アドレス指定方式のように、そのままメインメモリ上のアドレスとして解釈できるアドレスを、実効アドレスと言う。 |
間接アドレス指定方式 | オペランド部に、実効アドレスが入っているメインメモリ上のアドレスが入っている方式。 |
インデックスアドレス指定方式 | オペランド部に、インデックスレジスタの値を加えることで実効アドレスを求める方式。 |