アセンブル

アセンブル(assemble)とは、人間が記述したアセンブリ言語をバイナリデータに翻訳することをいう。

アセンブルは、高水準言語でいうところのコンパイルに該当する。コンパイルとは、人間の書いたソースコードプロセッサが理解できるバイナリコードへ翻訳することをいう。プロセッサとはCPUのこと。

高水準言語でいうところのコンパイルは、コンパイラというソフトウェアによって行われる。アセンブリ言語では、アセンブラと呼ばれるソフトウェアを使って同じことをする。この翻訳作業がアセンブルである。

アセンブルでいうところのバイナリコードとは、「0」と「1」で構成される二進数のデータである。オンとオフしかできないという表現を使うことが多い。いわゆるバイナリである。マシン語機械語、オブジェクトコード、ネイティブコードなどともいう。いずれも同じ意味。

アセンブルのプロセスは、まず英単語と記号で作られた命令語を作成する。これがニーモニックと呼ばれるもの。ニーモニックは、命令部分のオペコードとその操作対象となるオペランドで構成される。そしてこれをアセンブラと呼ばれるソフトウェアを使って機械語へ置き換える。この工程やがアセンブルとなる。

コンパイルとアセンブルの違いは、ほとんどない。やっていることは同じなので、変換する言語がCかアセンブリか、といったところである。あと、アセンブルという言葉というか表現ぐらいであろうか。

アセンブリ言語は、プロセッサと一対一のやりとりをするため、プログラムの処理速度が速くなる。コンピュータに近い位置でやりとりするため、ニーモニックは個々のプロセッサに合わせて作られる。つまりインタプリタ型言語のような移植性はもともとない。

アセンブルの意味を簡潔に説明すると

人間の言葉から機械語へ変換することをいう。