アセンブラ
(1999/04/23 [金])
x86 用のアセンブラといえば、いろいろと存在して、例えば、売り物であれば inprise の tasm といったものがある。フリーな物でも、microsoft の masm(ml.exe) や GNU の gas などがある。さて、今フリーなアセンブラで一番ホットなアセンブラといえば nasm(Netwide ASseMbler)である。nasm は、いわゆるアセンブラ野郎のためのアセンブラであるため、従来の microsoft などが用いた表記法を使用せず、手書きで記述しやすい独自の表記法を使用しているとこに特徴がある。しかし、違うとはいっても、大きく違っているわけではなく、ディレクティブというような部分の指定の方法が違うといった程度である。また、最新のインストラクションセット(MMX, MMX2 など)にも対応する。
さて、ソースをアセンブルした結果をオブジェクトとして出力する必要がある。それがアセンブラの仕事だからね。でその出力フォーマットに関しては基本的にはアセンブラはある特定の一種類程度のフォーマットしかサポートしていないことが多かった。しかし、nasm は違う。出力に関しては、x86 16bit OMF から始まって、32bit OMF, 32bit COFF フォーマットや ELF フォーマットなど、種々のフォーマットに対応していて重宝する。実行環境も MS-DOS や Windows console、UNIX など種々のプラットフォームで動作する。
こんなわけで、いま nasm がホットなのであります(そろそろ ver0.98が登場するはず)。
さて、ソースをアセンブルした結果をオブジェクトとして出力する必要がある。それがアセンブラの仕事だからね。でその出力フォーマットに関しては基本的にはアセンブラはある特定の一種類程度のフォーマットしかサポートしていないことが多かった。しかし、nasm は違う。出力に関しては、x86 16bit OMF から始まって、32bit OMF, 32bit COFF フォーマットや ELF フォーマットなど、種々のフォーマットに対応していて重宝する。実行環境も MS-DOS や Windows console、UNIX など種々のプラットフォームで動作する。
こんなわけで、いま nasm がホットなのであります(そろそろ ver0.98が登場するはず)。
by seclan