11.2 コンピュータの仕組み
コンピュータの仕組みを考える際には, より単純で身近な電卓を例に考えると非常に分かりやすいです.電卓もコンピュータも, 基本的に以下の四つの機能を持っています.
- 入力
- 記憶
- 演算
- 出力
電卓では, この四つの機能は以下のように実現されています.
では, 電卓を使って「1+2=3」という計算をしたときには, 電卓はどのようなふるまいをするでしょうか.
- 「1」キーを押すと, データレジスタ1に「1」が保存されて, ディスプレイに「1」が表示されます.
- 「+」キーを押すと, 「+」の情報が命令レジスタに記録されます.それと同時に, 「1」のデータがデータレジスタ1からデータレジスタ2にコピーされます.
- 「2」キーを押すと, 「2」の情報がデータレジスタ1に保存されて, ディスプレイに「2」が表示されます.
- 「=」キーを押すと, 命令レジスタの「+」とデータレジスタ1・2の「1」「2」が計算機構に送られて計算されます.そして計算結果がデータレジスタ1に送られ, そしてディスプレイに表示されます.
このように電卓は, 入力装置から情報を内部に伝えると一時的に情報を蓄え, そして必要に応じて計算処理を行った上で出力装置に結果を出力します.この一連の流れはコンピュータでも全く同じです.コンピュータの場合はCPUやメモリ・ハードディスク・マウスやディスプレイ・プリンターなど様々なものを使いますが, 基本的にはこの電卓の話と同じです.
● 練習問題
先ほどの例において,キー入力と,データレジスタ1,データレジスタ2,命令レジスタの値はそれぞれ以下のようになります.
キー入力 | データ レジスタ1 | データ レジスタ2 | 命令 レジスタ |
---|---|---|---|
1 | 1 | ||
+ | 1 | 1 | + |
2 | 2 | 1 | + |
= | 3 | = |
上の例にならい,以下のように電卓に入力した場合は,それぞれの値がどのように変化するか表の空欄を埋めなさい.
キー入力 データ
レジスタ1データ
レジスタ2命令
レジスタ9 ÷ 3 =
キー入力 データ
レジスタ1データ
レジスタ2命令
レジスタ3 + 1 × 2 =
では,コンピュータの中を見てみましょう.
コンピュータの中にも演算をつかさどるCPUと,記憶をつかさどるメモリ・ハードディスクがあります.これらがお互いに協調しあってコンピュータの機能を実現しています.