2010年2月28日日曜日

プログラム言語について-C言語-

久しぶりです。今日は、C言語についてお話します。最近では、C言語やJavaでのプログラム開発が多くなっていますが、私が最初にC言語を使うようになったのは、約25年前でした。
当時、パソコンでのシステム開発用のプログラム言語としては、アセンブラの他には、PascalやPL/M(PL/I言語の中から、パソコンシステム開発向けに限定したもの)くらいしかありませんでした。共に、メモリの確保やポインターなどを利用したプログラミングが可能となる点が、利用されていた点かと思います。

しかしながら、Pascalではビット演算機能がなく、より高速な処理を行うには不向きでした。Pascalは、設計者であるヴィルトが本来プログラミングとは、事柄を抽象的に考えるべきであり、コンピュータ内のビット形式などを意図したコーディングはすべきでないとの考え方によるものだと思います。しかし、これが、実際のプログラミングでは、より高速に処理するために、コンピュータ内のビット形式を意図する必要がありました。

このような状況下で、使われるようになったのがC言語です。C言語では、PascalやPL/Mなどのようにメモリを動的に確保したり、ポインターが利用できること、CPU上のビット操作が簡単にできること、構文が単純でありコンパイル時間が高速であったことなどからパソコンシステム用のプログラム言語として利用されるようになったと思います。

なお、C言語は、もともとUnixオペレーティングシステムを開発するために設計されているために、面白い書き方があります。。Unixが稼動するミニコンがPDP-11であったことから、PDP-11が6ビットマシンであったころから、通常は、バイナリデータを表現する際に16進数で表現されたますが、8進数の表現のが簡単になっています
 ⇒(文字列の中に16進数表現で書き込むには、「\xAB」、8進数表現で書き込むには「\253」などと指定します)

詳しくは、パソコン昔話(なぜ1バイトは8ビット)をご覧ください。

0 件のコメント:

コメントを投稿