先週からはじまった、あたらしい土日シリーズ「いろんなコンピューター言語の覚え方」、今日は、前回登場した、コンピューター言語の体系について、ちょっと詳しく書きたいと思います。
■コンピューター言語は、情報を処理するためにある。
コンピューター言語というのは、情報を処理するためにあります。
つまり、情報を処理させる手順・方法などを記述したのがコンピューター言語なわけです。
ここで、情報処理というのは、さまざまな入力デバイスからデータを入力し、データを処理して、さまざまな入力デバイスに、処理結果を出力することです。
ということは、コンピューター言語もそれに対応して、入力するための記述、処理するための記述、出力するための記述の部分があります。
ここまでをまとめると、こんなかんじ
・(さまざまなデバイスからの)入力
画面
ファイル
ネットワーク
:
↓
・処理
↓
・(さまざまなデバイスへの)出力
画面
ファイル
ネットワーク
:
■処理について着目してみると・・・
ここで、入力→処理→出力の処理について考えてみます。
入力してきたデータは、プログラムの内部に一時的においておき、処理加工します。この処理のとき、いっぺんに処理できないので、処理と処理の間でも、一時的に処理結果(=データ)を置いておきます。なので、処理部分の記述は、一時的にデータを置いておく部分と、処理命令部分に分かれます。
一時的に処理データを置く部分は、変数となるのですが、変数は、コンピューター言語によって、宣言したり(使う前に事前に書いたり)、宣言しなくて良かったりします。
宣言する言語においては、変数として保存するデータによって、宣言が変わったりします。
整数
小数(実数)
文字
論理値
などが、1つの変数で1つの値をもつもので、
複数の値を1つの変数としてまとめて宣言するものとしては、
配列=同じ種類のものを、領域を決めて宣言
構造体=ちがう種類のものを、1つのものにまとめて宣言
があります。文字の配列が文字列となりますが、文字列の場合は、違う宣言をするものもあります。
なお、ポインタを宣言できる言語があり、これは、なんでもありです。ただし、同じ種類のものを、「はじめに領域をきめず」処理中に、大きさを決めて使う場合に多いです。
ここまでをまとめると、こんなかんじ。
・(さまざまなデバイスからの)入力
画面
ファイル
ネットワーク
:
↓
・処理
・変数宣言
・ある1つの値を宣言
整数
小数
文字
論理値
・複数の値を宣言
配列
(文字列)
構造体
ポインタ(1つの値でもOK,なんでもあり)
・処理命令
↓
・(さまざまなデバイスへの)出力
画面
ファイル
ネットワーク
:
■処理命令について詳しく見ると。。
上記処理において、変数宣言について、詳しく見ましたけど、処理について考えると、順番にやる処理と、順番にやらない(条件分岐、ジャンプなど)ものがあります。順番にやらないものを制御文と呼びます。
制御文には、条件制御、繰り返し制御、単純なジャンプなどがあります。例外は、ジャンプ的な性格を持っている??かな。
順番にやる処理の場合は、演算子という、+-*/みたいなものと、関数やメソッドのような、処理命令を書くものがあります。
なお、処理命令においては、変数のときにみた、整数、小数、文字(文字列)を操作する命令があり、それらを変換する処理もあります。
演算子の場合は、整数、小数、文字(文字列)どれかしか操作できないものもあるし、(文字列の連結の . など)意味が違う場合もあります(JavaやJavaScriptの+ の文字の場合と数字の場合)
ここまでをまとめると、こんなかんじ
・(さまざまなデバイスからの)入力
画面
ファイル
ネットワーク
:
↓
・処理
・変数宣言
・ある1つの値を宣言
整数
小数
文字
論理値
・複数の値を宣言
配列
(文字列)
構造体
ポインタ(1つの値でもOK,なんでもあり)
・処理命令
・処理命令
・演算子
・命令(関数・メソッド)
・制御文
・条件
・繰り返し
・ジャンプ
↓
・(さまざまなデバイスへの)出力
画面
ファイル
ネットワーク
:
次回は、この体系をもとに、どのように、言語を理解していったらいいかについて考えてみたいと思います。