2011-08-25 581 views

回答

23

在Visual Studio中,转到项目的属性页面,然后转到C/C++ → Output Files → Assembler Output。它应该是这个样子:

property page

注意相应的编译器开关的/FA所有变体。

  • /FA:大会,只有清单
  • /FAcs:装配,机代码和源
  • /FAc:组装机器代码
  • /FAs:汇编源代码

下方的“汇编器输出“选项有一个”ASM列表位置“选项。这相当于/Fa开关(注意大小写!),它设置输出列表的文件路径。

您也可以在调试时(在断点处)查看程序集,并使用相应的源代码,右键单击源文件文本区域中的当前行并单击“转到反汇编”。

gotodisassembly

它会在该行跳转到组装右键单击在一个单独的标签上。上市将类似于此:

enter image description here

是的,我知道,截图是不是从Visual Studio 2010,但步骤和一般外观是相同的。我只是没有立即访问VS2010来制作截图。 :-)

+0

这个答案是_awesome_。不过,我相信当你有它汇编器输出时,我相信它不会创建二进制文件。如果我记得正确,你应该在某处注意它。 –

+0

@MooingDuck:这对于单独的预处理器运行(/ P)是正确的,但至少在VC2010中,/ FA变体仍然会生成二进制文件。 –

7

对于C++项目,使用/FA进行编译以获取汇编列表。

对于.NET程序集,有ildasm

1

对于.NET可以使用ildasm工具附带查看IL框架。

相关问题