開発言語(コンパイラ)とは?


 開発言語と言ってみたり、プログラミング言語と言ってみたり、コンパイラとか、 インタープリターとか呼ばれたりする場合もあります。加工シミュレーターを使用する 方々からすると、プログラミング言語という呼び方が一番馴染みがあるでしょうか。
 NCのプログラミング、つまりNCデータ自体は正にNC工作機械のプログラミング 言語であるわけです。これと同様にTRYCUTのようなWindows上で動作する アプリケーションも、実はOSやCPUを制御する言語で記述されています。
 ある規則に従って動作しているだけという意味においては、なんら変わるもの ではありません。インタラクティブなマウスの操作や、入力データ(NCデータ)に より動きを変えるというところで、少しNCデータとは異なって見えてしまうだけ です。

 コンピューターの最終的な動作命令は、マシン語とよばれる2進法(0と1) からなる情報の羅列です。これらは、とてもとても人間の目で把握するには読みきれ ない情報です。そのために、従来から人間が解かりやすい命令で記述して、それを 機械語に翻訳してくれるソフトが普及してきました。それがアセンブラというもの ですが、このアセンブラのレベルでも中身はCPUの命令(例:ビット列どうしの 足し算など)に対応したものの羅列となり、これでは単なる掛け算ですら、ずらずら とプログラミングする必要が出てきて、開発効率が悪いため、さらに高級(解かりや すい)な命令で書くことを実現してきたのが、C言語(コンパイラー)や BASIC(インタープリター)と言った言語です。
 コンパイラーとインタープリターの違いは、単純に言ってしまえば、事前に一括翻訳 してその結果をCPUに処理させるのがコンパイラーで、同時通訳しながら少し ずつ訳してゆくのがインタープリターです。実行時にどちらが高速かという見方を するならば、これは言うまでもなくコンパイラーです。事前に一括翻訳する作業を "コンパイル"、それをまとめる作業を"リンク"と呼んだりします。

 コンパイラーには、先の例であげたC言語以外にも、Pascal(Delphi)、科学技術計算 分野で普及したFortranや事務処理計算用に普及してきたCOBOL、AI向けのLISPなど、 様々なものがあります。
 インタープリターの代表的なものは、やはりBASICですが、JAVAなども基本的には 同様です。双方ともに処理速度に余裕のあるアプリケーションでは普及している 言語ですが、やはりスピードが要求されるCAD/CAM/CAEソフトの中枢部では、利用 できない言語と言えます。一部マンマシンインターフェイスの部分だけは、これらの インタープリター言語の特性を生かして利用する場合もあります。

※本SDKの仕様にあわせて開発する言語は、コンパイラーで、かつWindows 上で一般的に普及している言語を想定しています。


SDKトップページへ
トップページへ