・計算機は基本的に0と1しか使えない
0と1しか入れられない箱(bit: ビット)を複数用意することで、数字だけではなく文字も表すことができる。
専ら8個の箱(8bits=1byte)を最小単位として表現することが多い。例えば
1.箱(bit)の値に1加える
2.箱の値から1引く
3.一つの箱の値を他の箱の値に加える
このため、「掛け算(もしくは割り算)」を行うためには、1~3を組み合わせて行う必要がある。
4.一つの処理を(高速に)繰り返すことができる
一つの答えとして考えられるのが以下である(他にも考えられるが、最も時間浪費の無い方法が下である)。
step.1 箱a,b,cを準備する(ただしこの箱は1byte)。
step.2 箱aの中身を3, bの中身を7, cを0に。
step.3 箱cにbを加える。
step.4 箱aの中身を1減らす。
step.5 箱aの中身が0なら計算終了。
step.6 step.3に戻る。
Step1からStep6を実際に行うと右図になる。
繰り返し構造(ループ構造)を利用して掛け算を実行する。
掛け算を実行するのには、このようにループ構造を考慮した複雑な処理を行う必要がある。
この面倒な処理を計算機に行わせるために、
1.人が理解できる要素(例えばアルファベッド)を駆使して、計算機の行う一つ一つの処理と1対1に対応させる「枠組み」を作る
この枠組みが「プログラミング言語」であって、言語を用いて書かれた一連の処理命令を「ソースプログラム」と呼ぶ。また、ソースプログラムが書かれたファイルを「ソースファイル」と呼ぶ。
2.ソースプログラムを計算機の行う処理に対応して実際に変換する行為を「コンパイル」と呼ぶ。
3.ソースプログラムをコンパイルすると「実行形式」のファイルができる。このファイルを「実行プログラム」と呼称し、これを実行すると命令が処理される。
※C言語では、上のようなソースプログラムを書かなくても演算子「*」によって掛け算を表現できる。
つまり「7*3」とすれば良い。
だが、これはソースプログラムの書き方を簡略化しただけで、対応する計算機の処理はやはり繰り返し演算が実行されている。