ATT構文。
Cのライブラリルーチンは、次のアセンブリコードのスニペットを使用することがよくあります。
call next
next:
popl %eax
- ここに格納されている%eaxの値と、それがポップされるのはなぜですか?
- このスニペットの目的は何ですか?
プログラムカウンター(PC)の現在の値を示します。つまり、実行中の現在の命令のアドレスを取得します。
これは、そのスニペットの使用とCでの実行について説明している興味深い記事です:http://blogs.msdn.com/b/oldnewthing/archive/2004/12/16/317157.aspx
この一連の命令の後の%eaxの値は何ですか?
次を呼び出す
次へ:popl%eax
次のアドレスが何であれ
(popl命令があるメモリアドレス)注:これはPCではありませんが、それに関連しています
– PCは、次に実行される命令のアドレスです。%eaxには、最近実行された命令(popl)のアドレスが含まれるようになりました。