繁体   English   中英

如何在 Code::Blocks 中查看反汇编?

[英]How to view the disassembly in Code::Blocks?

我读了这篇关于 C/C++ 的一些底层基础的文章,作者基本上是通过编译器生成的汇编代码一行一行地向我们展示。 他使用的是 VS 2010,但我没有,我使用的是 Code::Blocks。 我如何查看那里的拆解? 当我转到调试器并单击反汇编时,它显示了一个空白窗口...

这是我编译的 C++ (.cpp) 代码(整个代码):

int main()
{
    int x = 1;
    int y = 2;
    int z = 0;

    z = x + y;

    return 0;
}

作者在文章中展示的这种反汇编称为交错inter-leaved disassembly (C 和反汇编交错),Visual Studio 等少数 IDE 支持。 代码块不支持。 但是代码块有一个像这样的单独的反汇编窗口

拆解窗口

选择一个源行。 右键点击。 Run to Cursor 现在Debug->Debugging Windows->Disassembly 除了运行到光标之外,您还可以设置断点,然后执行此操作。 但不知何故,它对我来说并不顺利,所以我建议使用Run to Cursor方法。

希望能帮助到你。

这是对旧帖子的新答案。 另一个答案完全是关于主题的,但做出了一个过时的陈述: “代码块不支持_”,... inter-leaved disassembly (C and disassembly interleaved)

这不再是事实。 较新版本的 Code::Blocks 更新了该功能。

将 Code::Blocks 17.12 版与 gcc (tdm-1) 5.1.0 版和 OP 代码一起使用

并按照说明进行操作:

  • Code::Blocks编辑器中,右键单击源文件中感兴趣的行,然后从出现的上下文菜单中选择Run to cursor 对于这个插图,右击主函数的右括号}

  • 然后,从标题栏菜单中选择Debug->Debugging Windows->Disassembly 这会导致弹出显示与源代码交错的程序集:

  • 这导致下图清楚地显示 C 源代码和汇编代码是交错的:

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM