【问题标题】:How can I get Dev-C++ to generate intel assembly from c code?如何让 Dev-C++ 从 c 代码生成英特尔程序集?
【发布时间】:2012-03-22 14:34:55
【问题描述】:

我了解编译器会将 c 源代码转换为汇编代码,然后再转换为机器代码。我搜索了我能找到的每个编译器设置,以及他们的网站,但我无法让它生成程序集。另外,网站声明 Dev-C++ 使用 AT&T 程序集,我也可以从它转换为 Intel 吗?

【问题讨论】:

  • 一般来说,C++ 编译器的工具链中有一个用于嵌入式汇编器的汇编器,这里是__asm("mov %ax,%dx") ; // move AX to DX。通常没有汇编程序输出,它是 AT&T 风格的。在这种情况下,我会将目标代码反汇编到英特尔汇编器。

标签: c assembly dev-c++


【解决方案1】:
C:\Program Files (x86)\Dev-Cpp\MinGW32\bin>gcc -S -masm=intel try.cpp

在命令提示符下输入(gcc 的位置取决于你安装 dev-C++ 的位置),它会生成汇编文件,在我的例子中是 try.s

【讨论】:

    【解决方案2】:

    Dev-C++ 似乎使用 GCC。

    您可以尝试此选项:gcc -S -masm=intel,如此问题中所回答:How do you use gcc to generate assembly code in Intel syntax?

    我不知道如何在 Dev-C++ 上设置命令行选项,但是很容易找到指南。

    【讨论】:

    • 该行将在哪里输入?它不是 c 语言,所以我认为它不仅仅是源文件的一部分,但我也不知道何时何地将它输入到命令提示符中。
    • @user1248980 gcc 也支持 C++ (g++)。您需要在 IDE 中找到指定编译器选项的位置。这与您的来源无关。
    猜你喜欢
    • 2019-06-28
    • 2011-11-13
    • 2020-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-14
    相关资源
    最近更新 更多