GNUアセンブラ
出典: フリー百科事典『ウィキペディア(Wikipedia)』
GNUアセンブラ | |
プラットフォーム: | クロスプラットフォーム |
---|---|
種別: | |
公式サイト: | http://www.gnu.org/software/binutils/ |
GNUアセンブラ(グニューアセンブラ)、GNUプロジェクトで使用されるアセンブラ。「Gas」の名で知られる。GNUコンパイラコレクションのデフォルトバックエンドとして働き、GNUオペレーティング・システムやLinuxのコンパイルにも使われる。GNU Binutilsパッケージの一部分である。
Gasの実行ファイル名はasであり、Unix系システムの同名のアセンブラの替わりになる。Gasはクロスプラットフォームであり、様々なコンピュータ・アーキテクチャ上で動き、またそれらを対象にアセンブルすることができる。GNU General Public Licenseでライセンスされたフリーソフトウェアである。
目次 |
[編集] 一般的な構文
Gasはサポートするアーキテクチャすべてで使用可能な一般構文を持つ。一般構文にはアセンブラ・ディレクティブやコメントも含まれる。
[編集] アセンブラ・ディレクティブ
Gasはピリオドではじまるキーワードを使用した、Cのプリプロセッサに似たアセンブラ・ディレクティブ(別名:擬似命令)を使用する。ほとんどのアセンブラ・ディレクティブはすべてのアーキテクチャ対象に使用できるが、一部機種依存のものもある[1]。
[編集] コメント
Gasは、Cと同様の「/*」「*/」で囲まれる複行コメントを実装している[2]。
例:
movl %eax,%edx /* ここはコメント 改行の入った 説明文 */
Gasは「#」を単行コメントとして使用する。
例:
pop %edx # ここはコメント # ここもコメント movl %edx,%eax
[編集] 批判
批判の一つに、x86やx86-64といったアークテクチャ上で一般的なインテル記法ではなく、AT&T記法を使用することが挙げられる。しかし、ヴァージョン2.10[3]から追加された.intel_syntax
ディレクティブにより、インテル記法もサポートされた[4][5]。
[編集] 出典
- ^ "The GNU Assembler - Assembler Directives" 2008-05-16閲覧.
- ^ "The GNU Assembler - Comments" 2008-05-16閲覧.
- ^ "GNU Assembler News" 2008-05-16閲覧.
- ^ "AT&T Syntax versus Intel Syntax" Using as, the GNU Assembler. 2008-05-16閲覧.
- ^ Ram Narayan (2007-10-17). "Linux assemblers: A comparison of GAS and NASM" IBM DeveloperWorks. 2007-10-17閲覧.
[編集] 外部リンク
|
||
---|---|---|
歴史 | GNU宣言 · GNUプロジェクト · フリーソフトウェア財団 · フリーソフトウェアの定義 · フリーソフトウェアの歴史 | |
GNUライセンス | GNU General Public License · GNU Lesser General Public License · GNU Free Documentation License · GPLリンク例外 | |
ソフトウェア | GNU (派生) · GNOME · Gnuzilla · Gnash · Bash · GCC · GNU Emacs · glibc · Gnulib · Coreutils · GNUstep · Autotools · その他のGNUパッケージとプログラム | |
代表者 | Robert J. Chassell · Loïc Dachary · Ricardo Galli · Georg C. F. Greve · Federico Heinz · Benjamin Mako Hill · Bradley M. Kuhn · エベン・モグレン · Brett Smith · リチャード・ストールマン · William John Sullivan |