web-dev-qa-db-ja.com

「アセンブリ」と「アセンブラ」

「アセンブリ」はファイルに書き込むものであり、「アセンブラ」がバイナリコードに変換することを教えられました。

しかし、私はこれらの2つの用語がさまざまな作品で混合および一致しているのを確認します。 「アセンブラー」と書いて、その後「アセンブラー」で実行可能にすることも聞いたことがあります。

教えてください、使用する正しい言葉は何ですか?

61
Henrik Paul

実際、言語は「Assembly Language」と呼ばれ、機械語に変換するためのツールが「Assembler」です。

ウィキペディアの詳細情報: http://en.wikipedia.org/wiki/Assembly_language

69

言語の目的はコミュニケーションです。

人々が物事を言い、他の人がそれを理解する場合、彼らは正しい用語を使用しています。

私たちは理解を容易にするためのルールを持っていますが、私の意見では、あなたにとって最も良い音を言って、他の人に彼らに最も良い音を言ってもらい、あなたがすべてが何を意味するのかすべてを理解させると、すべてが桃色になります。

価値があるので、私は「Assembly」と書いて「Assembler」で組み立てることを好む。いつの日か「組立て」が一言の言葉になるべきだと思います。

13
Chris Lutz

Assemblyは、マシン実行可能コードに含まれるコード/実行可能コードの一部です。これはobj、exe、dllなどの可能性があります...コンパイルの結果です。

assemblerは、コードをマシン実行可能コードにコンパイルする「コンパイラ」です。このコードは "Assembly Language"という言語で記述されています。一般的な英語のアセンブリ言語は、しばしばアセンブラーと呼ばれます。

アセンブラは創造的な言葉のようで、他の用語や外国語の用語の誤用による混乱を減らす必要から生まれました(他の回答を参照)。

9

これは(人間の)言語の問題である可能性があります-スウェーデン語の「assembler」は「 assemblelator "...

参照: http://sv.wikipedia.org/wiki/Assemblator

6
Stobor

正直なところ、これらすべての概念を適切に区別する「標準」の用語があるかどうかはわかりません。 (例:「ASM」と言った場合、何を話しているのですか?)

私の定義を教えてあげます。

機械コード

これは、アセンブラーまたはコンパイラーのコンパイルされた出力です。

アセンブリ

これは人間が読める形式のマシンコードです。 (または、私たちが知っているマシンコード。)

マシンコードの代わりにアセンブリという用語を使用することがあります。これは、実際にマシンコードを読み取るのではなく、アセンブリを読み取ることを意味するためです。

アセンブリ言語

これは、x86アセンブリなどの特定のマシンコード言語を指します。

アセンブラ

これは、ソースコードをマシンコードにコンパイルするために使用されるMASM\FASMのようなツールです。

アセンブラー言語

これは、任意のアセンブラによって使用される言語です。

アセンブラーは、基になるアセンブリ言語には存在しない独自の構文糖を追加できるため、これはアセンブリ言語とは異なると私は見ています。 (高水準関数、マクロなど)

4
Smoke

これらの用語の起源は、アセンブリの古典的な辞書の定義に戻っていると思います。「目的-を達成するための機械命令のアセンブリ」は、おそらくコンピュータの開拓者が機械命令。次に、「アセンブラー」は、個々の機械語命令を取り、それらを「アセンブリー」にまとめるデバイスです。

1
Ira Baxter