C编译成汇编吗?

新手上路,请多包涵

C++ 代码是否编译为汇编代码?如果我们有 C++ 代码,我们能得到汇编代码吗?

原文由 Ata 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 631
1 个回答

绝大多数 C++ 编译器会将 C++ 源代码转换为目标文件(具有足够控制信息以链接到可执行文件的机器代码)。他们实际上 可能会 生成汇编语言作为中间步骤,甚至使用单独的汇编程序来处理汇编程序源代码,但您通常永远不会看到这一点。例如,您实际上必须通过使用 -S 标志来获取 gcc 以生成汇编代码(.s 文件)。通常,您永远不会看到程序集。

但是 C++ 标准并没有强制要求编译器输出的最终形式,只是要求代码在运行时必须以某种方式运行。

事实上,最早的 C++“编译器”实际上生成了 C 源代码,然后对其进行编译。

如果您感到受虐,您可以让您的 C++ 编译器生成目标代码、Java 字节代码甚至 GWBASIC。

原文由 paxdiablo 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题