言語処理ツールの種類と特徴

この記事での学習内容 基本情報 応用情報

代表的な言語処理ツールの種類,特徴,機能を理解する。

ジェネレータ,原始プログラム,プリプロセッサ,アセンブラ,コンパイラ,実行時コンパイラ,クロスコンパイラ,インタプリタ,目的プログラム,リンカ,ローダ,ロードモジュール

原始プログラム

原始プログラムは、プログラム言語で書かれた文字列のファイルです。人間が書いたり読んだりするプログラムであり、そのままではコンピュータでは実行できません。

オブジェクトプログラム

オブジェクトプログラムは、コンパイラやアセンブラが出力した機械語プログラムです。メインルーチンやサブルーチンや再利用のためのルーチンが分かれており、機械語部分の他に、リンカが結合するための結合用の情報がついています。

ロードモジュール

ロードモジュールは、主記憶装置にロードして実行できる機械語命令だけのファイルです。ただし、動的リンクのための情報を持っていることがあります。ロードモジュールはリンカによって出力され、ローダによって入力されます。

リンカ

リンカ(連係編集プログラム)は、複数のオブジェクトプログラムを入力して結合し、一つのロードモジュールを出力するソフトウェアです。コンパイラやアセンブラが原始プログラムの形式のメインルーチンやサブルーチンを翻訳して、複数のオブジェクトプログラムを出力します。リンカはそれらを結合するのに加えて、既存の目的ライブラリの中のオブジェクトプログラムを再利用するために結合することも行います。

ローダ

ローダは、補助記憶装置上のロードモジュールを主記憶装置上へ読み込むソフトウェアです。

クロスコンパイラ

クロスコンパイラは、原始プログラムを翻訳して、異なる種類のコンピュータ向けのオブジェクトプログラムを出力するコンパイラです。

対象のコンピュータの開発途上の期間に用いたり、対象のコンピュータがソフトウェアの開発に向かない場合に用いたりします。

ジェネレータ

ジェネレータは、パラメータを入力して目的プログラムを出力するソフトウェアです。プログラムのロジックが定型的である分野で、本格的なプログラミングをすること無しにプログラムを作成することができます。

プリプロセッサ

プリプロセッサは、何らかのファイルを入力して、原始プログラムを出力するソフトウェアです。

原始プログラムを整形したり、定型的な部分を、ライブラリから取り込んで展開したりします。

コンパイラの前に実行されるプロセッサなので、プリプロセッサといいます。