ICDロゴ

マクロ命令 (macro-instruction)

【マクロ・メイレイ】

最終更新日: 2001/06/28

 アセンブリ言語などにおいて、プログラム全体で頻繁に使用される命令コード列や似たような処理を行う一連のコード列に対して、あらかじめ名前を付けて定義しておいて、記述を簡略化するための機能のこと。実際のマシン語命令ではなく、それらをまとめた高機能な擬似的な命令を定義することから、マクロ(=巨視的な)命令と呼ばれる。

 プログラム中でマクロ命令を使用すると、アセンブラはマシンコードを生成する際に、元の定義されたマシン語の命令コード列に展開してからアセンブルを行う。マシン語命令におけるサブルーチン呼び出しなどと違って、マクロ命令を使用すると、そのたびに実際の命令コードとして展開されることになる。そのため、サブルーチン呼び出しと比べるとコードサイズは大きくなるが、ある決まったパターンの命令列を簡単に記述できるというメリットは大きい。例えば、2つのレジスタの内容を入れ替えるコードをアセンブリ言語で記述すると数命令必要になるが(例:push reg1; move reg2→reg1; pop reg2の3命令)、これをEXCHANGE_REGなどという名前でマクロ定義しておけば、1命令で分かりやすく記述することができる。

Copyright (C) 2000-2007 Digital Advantage Corp.

アイティメディアの提供サービス

キャリアアップ