1. プログラミング言語
1.1 ハードウエアとソフトウエア
パソコンをはじめとするコンピュータは「ハードウエア」といわれます。このハードウエアだけで何
ができるかといえば単なる計算だけです。もちろんそれを表示することもできませんし、キーボードか
ら文字を打つこともできません。計算ができるといっても、数字を入力できないのですから数値を与え
ることすらできないのです。
このハードウエアを制御したり、計算させたりするために必要なのが「ソフトウエア」です。ソフト
ウエアがハードウエアをコントロールしているわけです。文書処理で使ったワープロソフト
MS-Word や表計算ソフトMS-Excel もそんなソフトウエアの一つです。ソフトウエアがあるからこそ、
ハードウエアを使うことができるのです。そのソフトウエアを「プログラム」とも呼びます。このソフ
トウエアを作るために必要なのがプログラミング言語なのです。
逆にいえば、ソフトウエアがあるとからこそパソコンというハードウエアが意味を持ってくるのです。
ここのプログラミング基礎では、そのプログラムを作成するための最初の部分を学習します。

続きから↓↓ 
kisoc
1.2 プログラミング言語とは
すでに習っていると思いますが、コンピュータ(正確にはCPU)
が理解できるのは「マシン語(機械語)」といわれるものだけで
す。このマシン語は人には単なる数字の羅列にしか見えません。
2 進数ですが、ほとんどの場合、16 進数で表示することが多いの
です。
しかし、これでは人間にとっては何がなんだか分かりません。
そこで、そのマシン語を人間の言葉に近いもの(アメリカで生ま
れたのでもちろん英語をもとにしています)で置き換えたものが
「アセンブラ言語」といわれるものです。このアセンブラ言語を
マシン語に変換するプログラムをアセンブラといいます。一応、
人の言葉に近いものになっていますがわかりにくいものです。ア
センブラ言語を「低水準言語(低級言語)」といいます。
アセンブラ言語では開発効率が低い、わかりにくいなどの問題
点があります。そこで、もっと人間の言葉に近い、開発効率を考
えた言語の開発が行われました。アセンブラ言語に対して、この
言語を「高水準言語(高級言語)」といいます。ここで扱うC 言
語のほかにもBASICやFortran, Pascal, Java などが高水準言語
です。
しかし、どの言語も英語を元にしているので、かなり似たものに見えます。ですから、プログラミン
グ言語、特に高水準言語はひとつを知っていれば、二つ名以降の学習は割と楽になることが多いもので
す。


kisoc2
1.3 コンパイラとインタプリタ
プログラミング言語で書かれたプログラムを「ソースプログラ
ム」といいます。しかし、これはマシン語ではないのでCPU は
理解することができません。ソースプログラムをCPU の理解で
きるマシン語に変換しなければなりません。この方法には2 通り
あります。
一つ目は「コンパイラ」といわれるプログラムを使って、ソー
スプログラムをすべて一度にマシン語に直し、それを実行する方
法です。ちょうど英語の本を日本語に翻訳してもらい、その本を
読むようなイメージです。最初の翻訳のときには時間がかかりま
すが、本になっているのですから、繰り返し何度でも読むことが
できます。
もう一つは「インタプリタ」といわれるプログラムを使って、
ソースプログラムを1 行ずつマシン語に直し、実行する方法です。
英語の分かる人にその場で英語の本を日本語に訳して読んでも
らうことのようなイメージです。すぐに内容は分かりますが、そ
の場で訳してもらっているので、時間がかかります。もう一度内
容が知りたくなったら、また、日本語に訳して読んでもらわなけ
ればなりません。
今回の講義ではコンパイラを使ってCについて勉強して行きま
す。
1.4 C 言語について
1950 年代にIBM で開発された最初の高水準プログラミング言語がFortran でした。このFortran は
数値計算の分野で現在も多く使われています。このFortran をもとに簡素化したBASIC も使われてい
ます。高校の範囲に含まれるのがこのBASIC です。これらの言語はプログラムの流れがつかみにくく
なるという欠点も持ってました。
これに対し、1970 年頃、「構造化プログラミング」といわれる概念が提案されました。これはプログ
ラムを論理的にわかりやすく記述することを目的としています。現在では、この構造化プログラミング
がもはや常識となり、Fortran やBASIC の現在のバージョンでも、構造化プログラミングの概念を取
り入れるようになっています。
C 言語はUNIX と呼ばれるOS のためにAT&T のベル研究所のリッチー、カーニハンらによって開
発されたシステム記述用の言語で、構造化プログラミングを基本とする言語です。当初C 言語はベル研
を中心とした一部愛好家だけが使っていた言語でしたが、UNIX システムの成功により研究機関へ普及
していきました。 普及に伴い、当初のシステム記述言語としての役割のほか、現在では科学技術計算
用、事務処理、図形処理、各種ゲームなど幅広い分野で使われるようになりました。

 1.5 ファイル
パソコンのディスクの中に保存されるものはすべて「ファイル」と呼ばれます。たとえば、ワープロ
で作成した文書であれば、文書ファイルと呼ばれます。
この講義で作成するのは「ソースプログラムファイル」ということになります。このファイルを
Wz-Edtor というエディタで作成することになります。これをコンパイラを使ってマシン語に直すので
すが、これもディスクに保存されますのでファイルです。CPU がわかる=実行できることから、「実行
ファイル」と呼びます。この実行ファイルを作成することを「コンパイルする」と呼ぶことになります。
kisoc3
 
 ソースファイルの作成の仕方、コンパイルの仕方、実行ファイルの実行の仕方については次回以降から始
めます。

最後に、C言語を初めて書こうと思っているかたにおすすめの技術書を紹介します。
こちらです↓↓

スポンサーリンク