2010-12-29 21 views

答えて

0

MASMを使用する必要があります。 MASMは、Microsoft Macro Assembler Referenceの略です。

VSでasmを実行するもう1つのより簡単で簡単な方法は、C/C++ソースファイルにasmコードinliningです。

+0

返信いただきありがとうございます。私はこのプロジェクトを "Win32"を使用してビルドすることができます...しかし、MFCを使用すると...できません – NMMA

+1

物事は非常に簡単に間違って行く可能性があるので、アセンブリコードを貼ってください。 MFCを使用する場合より具体的でいくつかのビルドエラーは間違いなくそれを釘付けに役立ちます。 – Shinnok

2

ソリューションエクスプローラウィンドウのカスタムビルドルールでプロジェクトを右クリックし、 "Microsoft Macro Assembler"を選択します。これにより、プロジェクトに追加する.asmファイルは、.asmファイルのカスタムビルドルールでコンパイルされます。

まだ問題が解決しない場合は、を実行してください。エラーメッセージが表示されていることを確認してください。彼らは役に立つものです。

+0

MASMを別途インストールする必要がありますか、それともVSに付属していますか? – Ferruccio

+0

@Ferr - 版によりますが、それはExpress版には含まれていないとかなり確信しています。 VSインストールディレクトリでvc/bin/ml.exeを探します。無料でダウンロードできます。 –

+0

あなたの役に立つ答えがたくさんあります。私のコードをコンパイルすると、次のエラーが表示されます。この行の "エラーA2070:無効な命令オペランド" movss xmm0、xi – NMMA

1

基本的な質問は多かれ少なかれ解決されますが、Visual Studioプロジェクトでアセンブリ言語のみを実行する場合はどうしたらいいですか?ここに答えがあります:

  • 一般的な空プロジェクトから始めます。ソリューションエクスプローラでプロジェクト名を右クリック

  • 、Microsoftマクロアセンブラが使用されているように、ルールをカスタムビルド を設定します。

  • 次に、[プロジェクト - プロパティ]に移動します。ダイアログボックス でリンカーを見つけて展開します(+をクリックします)。

  • [システム]を選択します。

  • 「サブシステム」の下矢印をクリックし、「コンソール (/ SUBSYSTEM:CONSOLE)」を選択します。

  • 同じダイアログボックスのリンカで、[詳細設定]を選択します。

  • コードの開始点として として使用したラベルになるように、先頭行のエントリポイントを編集します。注意:エントリポイントに記入する際には、アンダースコアの を入力しないでください。 VSは明らかに のアンダースコアを追加します。

環境は、プロジェクトとしてアセンブリ言語をプログラミングするように設定されています。

この手順は、Microsoftの無償のVisual C++ 2008 Expressエディションでも動作します。このエディションは、この投稿日時点でMSからダウンロード可能です。

おかげで楽しいです!

+0

SUBSYSTEM:CONSOLEサブシステムを設定するのは本当に必要ですか?なぜですか? –

関連する問題