web-dev-qa-db-ja.com

コンパイラの出力がオブジェクトコードと呼ばれるのはなぜですか?

ポールグラハムによるエッセイProgramming Languages ExplainedHackers&Painters

コンパイラーにフィードする高水準言語はソースコードとも呼ばれ、生成される機械語翻訳はオブジェクトコード

オブジェクトコードに関するWikipediaの記事 から:

オブジェクトコード、またはオブジェクトモジュールは、コンピューターコンパイラが生成するものです。

から 「コンパイラ」の定義

従来、コンパイルの出力は、オブジェクトコードまたはオブジェクトモジュールと呼ばれていました。 (ここでの「オブジェクト」という用語は、オブジェクト指向プログラミングとは関係がないことに注意してください。)

それでは、関連するオブジェクトという用語は何ですか?

Objectコードはtargetコードとも呼ばれます。これは、コンパイラによって実行される変換プロセスのターゲット結果であるためです。したがって、「オブジェクトコード」は「ソースコード」の反対として使用されます。

コンパイラの世界には他にも奇妙な名前があります。たとえば、プログラムのバイナリコードを含むファイルのセグメントは、「テキストセグメント」と呼ばれることがよくあります。

10
dasblinkenlight

「目的」のように目的です。 「もの」としての異議はありません。

「ターゲットコード」と呼ばれることに関するdasblinkenlightの回答に似ています。これはコンパイラのターゲットまたは目的です。

8
mike30

オブジェクトコードは、ソースコードをコンパイルすると生成されます。このオブジェクトコードは、実行に必要なライブラリがないため、まだ実行可能ではありません。したがって、複数のオブジェクトコードとライブラリをリンクすると、実行可能になります。

私の理解では、「object」は、そのソースコードを記述して開発した「もの」に関連しています。モジュール、クラス、関数など何でもかまいません。

1
Mert Akcakaya