13

昨日、AMD64 および Itanium ターゲット用にコンパイルする場合、Microsoft Visual C++ ではインライン アセンブリ (__asm キーワードを使用) がサポートされないことを知りました。

あれは正しいですか?もしそうなら、それらのターゲットのインラインアセンブリをサポートしない理由を誰かが知っていますか? ただドロップするのはかなり大きな機能のようです...

4

2 に答える 2

12

正解です。VS 2010 Beta 1ではまだサポートされていません。私の推測では、インライン アセンブリは実装が難しすぎると思います。Microsoft が実装した方法では、周囲の C コードと統合されるため、データが C コードに出入りできるようになり、適切なグルー コードが自動的に挿入されます。そのためには、C コンパイラが実際にアセンブラ コードを理解する必要があります。彼らは、AMD64 と Itanium にそれを実装していません。

于 2009-08-18T17:53:58.510 に答える
5

ただ落とすのはかなり大きな機能のようです...

Cの規則に従っている限り、アセンブラで記述された関数を呼び出すのは非常に簡単です。このチュートリアルでは、その方法について説明します。

于 2009-08-18T17:59:28.967 に答える