アセンブラとは？
アセンブラ・プログラムは、オペレーションやアドレッシング・モードに関するニーモニックや構文の組み合わせを数値に変換してオブジェクト・コードを作成する。この表現には通常、操作コード（「オペコード」）のほか、その他の制御ビットやデータが含まれる。アセンブラはまた、定数式を計算し、メモリ位置やその他のエンティティのシンボリック名を解決する。記号参照の使用はアセンブラの重要な機能であり、面倒な計算やプログラム修正後の手作業によるアドレス更新を省くことができる。また、ほとんどのアセンブラには、テキスト置換を実行するためのマクロ機能が含まれている。例えば、一般的な短い命令シーケンスを、サブルーチンと呼ばれる代わりにインラインとして生成することができる。

アセンブラの中には、命令セット固有の最適化を簡単に実行できるものもある。具体的な例としては、様々なベンダーのx86アセンブラが挙げられる。ジャンプサイジングと呼ばれるもので、そのほとんどは、要求に応じて、任意のパス数でジャンプ命令の置き換え（長いジャンプを短いジャンプや相対ジャンプに置き換える）を実行することができる。また、RISCアーキテクチャ用のアセンブラのように、CPUパイプラインをできるだけ効率的に利用するために、命令スケジューリングの最適化を支援できるものもある。