このページではコンピュータの5大装置(5大構成要素)について解説したいと思います。コンピュータも登場してからかなり年数が経っていますが、基本的にずっとこの5大装置が連携して動作することでいろんな便利な機能を提供してくれています。
コンピュータの仕組みを理解するだけでなく、プログラミングをする上でも役立つ知識ですので、是非読んでみてください。
コンピュータの5大装置
コンピュータの5大装置とは、下記の5つの装置のことを言います。
- 制御装置
- 演算装置
- 記憶装置
- 入力装置
- 出力装置
コンピュータの5大装置の関係図を図示すると下のようになります。
ポイントは制御装置が他の4つの装置を制御している点です。制御装置の指示によって他の4つの装置が処理を行う関係となっています。またデータは基本的に全て記憶装置のメモリを経由して流れるという点もポイントです。
それでは各装置がどのような役割を担っているのかについて解説していきたいと思います。
制御装置
制御装置はプログラムの解釈・実行やプログラムを実行するために各装置の制御を行う装置です。CPU(Central Processing Unit)を構成する装置の一つです。
スポンサーリンク
演算装置
演算装置は制御装置からの指示に応じて演算処理を行う装置です。制御装置同様に CPU(Central Processing Unit)構成する装置の一つです。
入力装置
コンピュータへのデータの入力処理を行う装置です。例えば下記のようなものが入力装置として挙げられます。
- キーボード
- マウス
- マイク
- タッチパネル
出力装置
コンピュータからデータの出力処理を行う装置です。例えば下記のようなものが出力装置として挙げられます。
- ディスプレイ(画面)
- スピーカー
- プリンタ
スポンサーリンク
記憶装置
データを格納する装置です。例えば下記のようなものが記憶装置として挙げられます。
- メモリ
- ハードディスク
- SSD
- USB メモリ
- MO
特にメモリは主記憶装置と呼ばれ、その他の記憶装置は補助記憶装置と呼ばれます。
5大装置の動作の流れ例
各装置の個々の役割は理解していただけたと思いますので、次は5大装置がどのように連携しながら動作しているかを「電卓アプリ」の例を用いて解説していきたいと思います。かなりザックリした解説ですが、イメージは掴めると思います。
アプリの起動
まずは「電卓アプリ」の起動です。アプリのファイル名が「電卓.exe」だとすると、このファイルをダブルクリックするとファイルが起動しますよね。
アプリの起動時は下記のように動作して実行されます。
- 制御装置が記憶装置のHDD等からアプリのプログラムをメモリにロード
- これによりアプリを動作させるために必要なプログラムやデータ(画面データや作業用メモリなど)が記憶装置(メモリ)上に設置される
スポンサーリンク
画面の出力
アプリ起動するとアプリの画面が表示はされますよね。
この表示処理は制御装置・出力装置・記憶装置が下記のように動作して実行されます。
- 制御装置が出力装置(ディスプレイ)に対して画面データの表示を指示
- 出力装置(ディスプレイ)がそのデータを記憶装置(メモリ)から読み込んで画面に表示
値や演算子の入力
次は電卓っぽく値や演算子の入力について考えてみましょう。
このデータの入力は制御装置・入力装置・記憶装置が下記のように動作して実行されます。
- 制御装置が入力装置(マウス)に対してデータの入力の受付(ボタンのマウスクリックによる入力を想定)を指示
- データが入力されると(ボタンがクリックされると)、入力装置はその入力された値や演算子を記憶装置(用意された作業メモリ)に格納
電卓なので「=」が入力されるまでこの入力処理を繰り返し行います。
演算
「=」が入力されれば次は演算結果の表示ですね。しかし、演算結果を表示するためにはまず計算を行う必要があります。
この演算処理は制御装置・演算装置・記憶装置が下記のように動作して実行されます。
- 制御装置が演算装置に演算を指示
- 演算装置が必要なデータを記憶装置(メモリ)から取得
- 演算装置がそのデータを用いて演算を実行
- 演算装置が演算結果を記憶装置(メモリ)に格納
スポンサーリンク
演算結果の出力
最後に演算結果を画面に表示しましょう。
この表示処理は制御装置と出力装置と記憶装置が下記のように動作して実行されます。
- 制御装置が出力装置(ディスプレイ)に記憶装置(メモリ)上の演算結果の出力を指示
- 出力装置が記憶装置から演算結果を読み込んで出力
かなり大雑把でツッコミどころなどもあるかもしれませんが、イメージとしてはこんな感じです。ポイントはすべての処理は制御装置の処理から開始していることですね。
プログラムの役割
ではこの一連の動作が行えるように制御装置に指示を出しているのは何でしょうか?
この制御装置に指示を出しているものこそがプログラムです。上記の例だと「電卓.exe」というプログラムに制御装置がどのように動作するかが記述されており、制御装置はメモリ上に置かれたプログラムを読みながら、その命令を忠実に実行しているだけなんです。
なので、プログラムさえ上手く書いてやれば5大装置を上手く制御してコンピュータでいろんなことを行うことが可能す。
最後に簡単なプログラム例で5大装置を制御している例を示しておこうと思います。
#include <stdio.h>
int main(void){
/* 変数は作業用メモリとして
プログラム起動時に記憶装置に設置される */
int a;
int b;
/* 出力装置(ディスプレイ)に
文字列を出力 */
printf("input = ");
/* 入力装置(キーボード)からの
データの入力を受付け */
/* 入力されたデータは
記憶装置(変数a)に格納 */
scanf("%d", &a);
/* 演算 */
/* 演算結果は記憶装置(変数b)に格納 */
b = a * 10;
/* 記憶装置(変数b)からデータを取得 */
/* 出力装置(ディスプレイ)に
取得した演算結果を出力 */
printf("output = %d\n", b);
return 0;
}
C言語が分からないと言う方はコメントを参考にしていただければと思います。こんな簡単なプログラムでも、5大装置全てを動作させて実行されるプログラムなんです。
装置を制御するのは大変そうですが、それを簡単に行うための関数(上記の例だと scanf や printf )が用意されていますので、これらの関数を行うことで5大装置を制御するプログラムも簡単に作成することが可能です。
まとめ
このページではコンピュータの5大装置について解説しました。コンピュータはこれらの5大装置が連携して動作することで我々に便利な機能を提供してくれています。
そしてどのように連携して動作させるかを記述したものがプログラムになります。プログラムを作成することでコンピュータの5大装置を動作させ、いろんな便利で有益なアプリ・ソフトを作成することができます。
コンピュータの5大装置を動作させていることを意識すると、プログラミングも更に楽しくなりますので、是非5大装置がどんなものか、どんな動きをするかを覚えておいてください!
[…] プログラミング入門者向け:コンピュータの5大装置を解説 […]