アセンブラ(英:assembler)とは、アセンブリ言語(英:assembly language) を機械語に変換するソフトウェアのこと。高級言語のコンパイラ(英:compiler)に相当する。
機械語とアセンブラとアセンブリ言語
元来、コンピュータのCPUは電圧の高低で1、0を表したもので動作している。コンピュータが読み込むプログラムも1と0の羅列で記述されており、これは機械語と呼ばれる。
プログラミングをする際に機械語を直接記述するのは大変なので、機械語のそれぞれの命令を人間に理解しやすい記号(ニーモニックと呼ばれる)に置き換えて記述した後に、機械語に変換するという手順をとるようになった。この変換する工程をアセンブル(英:assemble)といい、変換を行うプログラムをアセンブラという。また、これに用いるプログラミング言語をアセンブリ言語と言う。
機械語の仕様はCPUごとに異なるため、アセンブリ言語で記述されたプログラムは移植性が低い。
アセンブリ言語での開発
かつてはOSやデバイスドライバといったシステムソフトウェアの開発にアセンブリ言語が使われ、アプリケーションの開発に用いられる高級言語(特定のCPUに依存しないプログラミング言語。人間が比較的理解しやすい)と使い分けられていた。現在ではシステムソフトウェアでもC言語やC++といった高級言語での開発が主流で、アセンブリ言語が使われることは滅多になくなった。
ゲームプログラミングでもファミコンやスーパーファミコンの時代にはアセンブリ言語での開発が主流であった(当時はC言語使ってる会社はコーエーくらいだとされていたらしい)が、プレイステーションやNINTENDO64でC言語に切り替わった。
関連項目
- 4
- 0pt