【发布时间】:2012-08-24 20:22:06
【问题描述】:
据我了解,当一个程序(例如用 C 编写的)被编译时,它首先被翻译成汇编语言,然后被翻译成机器语言。为什么不能(不是)跳过“汇编语言步骤”?
【问题讨论】:
-
它有什么好处?那能解决什么问题? (而且我敢肯定,有些编译器会直接使用机器代码。操作系统与这些无关。)
-
所以你是说C代码背后没有汇编语言?那怎么跑得比 C 快呢?
-
许多编译器跳过了文本汇编阶段..
-
C 和汇编语言均未执行。两者都必须先翻译成机器代码才能执行。将 C 直接翻译成机器代码与翻译成汇编语言然后再翻译成机器代码应该不会影响执行速度。
标签: c assembly compiler-construction