简单讲,编译器就是将 “一种语言(通常为高级语言)” 翻译为 “另一种语言(通常为低级语言)” 的程序。一个现代编译器的主要工作流程: 源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables) 高级计算机语言便于人编写,阅读交流… [ 小百科 ]

简单讲,编译器就是将 “一种语言(通常为高级语言)” 翻译为 “另一种语言(通常为低级语言)” 的程序。一个现代编译器的主要工作流程:

源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables)

高级计算机语言便于人编写,阅读交流,维护。机器语言是计算机能直接解读、运行的。编译器将汇编或高级计算机语言源程序(Source program)作为输入,翻译成目标语言(Target language)机器代码的等价程序。源代码一般为高级语言 (High-level language), 如 Pascal、C、C++、Java、汉语编程等或汇编语言,而目标则是机器语言的目标代码(Object code),有时也称作机器代码(Machine code)。

对于 C#、VB 等高级语言而言,此时编译器完成的功能是把源码(SourceCode)编译成通用中间语言(MSIL/CIL)的字节码(ByteCode)。最后运行的时候通过通用语言运行库的转换,编程最终可以被 CPU 直接计算的机器码(NativeCode)。