1. ホーム
  2. visual-c++

[解決済み] Visual C++を使用してコードの背後にあるアセンブリを表示するにはどうすればよいですか?

2022-07-18 03:21:38

質問

2 行のコードの効率に関する別の質問を読んでいたところ、OP はコードの背後にあるアセンブリを見て、両方の行がアセンブリで同一であると言いました。 余談ですが、プログラムがコンパイルされたときに作成されるアセンブリ コードを見るにはどうしたらよいでしょうか。

私はMicrosoftのVisual C++を使用していますが、Visual Basicで書かれたコードの背後にあるアセンブリを表示することが可能かどうかも知りたいのです。

C++やVisual Basicのような高級言語で書かれたプログラムの背後にあるアセンブリコードを見るにはどうすればよいのでしょうか。

どのように解決するのですか?

いくつかの方法があります。

  1. 通常、Visual Studio (および eclipse も同様) で C++ をデバッグしているときに、アセンブリ コードを見ることができます。Visual Studio で問題のコードにブレークポイントを設定し、デバッガーがヒットしたら、クリックして "Go To Assembly" (または CTRL+ALT+D を押してください) を見つけます。

  2. 2 番目のアプローチは、コンパイル中にアセンブリ リストを生成することです。これは、プロジェクト設定 -> C/C++ -> 出力ファイル -> ASM リストの場所 に移動して、ファイル名を記入します。また、"Assembly Output" を "Assembly With Source Code" に選択してください。

  3. プログラムをコンパイルし、任意のサードパーティデバッガを使用します。OllyDbgやWinDbgを使用することができます。また、IDA (対話型ディスアセンブラ) を使用することもできます。しかし、これはそれを行うためのハードコアの方法です。