编译

编译是将用给定语言编写的计算机程序转换为另一种格式或语言的指令集的过程。编译器是执行该任务的计算机程序。

通常,编译器将用高级语言(如C++RustJava)编写的代码转换为可执行(可运行)代码——即所谓的二进制代码机器代码WebAssembly就是一个可执行二进制代码的例子,它可以从C++、Rust、C#、Go、Swift和其他几种语言编写的代码编译,并在任何网页上运行,现代浏览器支持其大部分功能(参见浏览器兼容性表)。

大多数编译器执行预先(AOT)编译或即时(JIT)编译。

GNU gcc 编译器是AOT编译器的一个著名例子。AOT编译器通常在shell环境(从终端或控制台内部)或IDE中通过命令行调用。

JIT编译器通常不会直接调用,而是内置在软件运行时中,以提高性能。例如,现在所有主流浏览器都使用内置JIT编译器的JavaScript引擎。

编译器也可以在高级语言之间进行翻译——例如,从TypeScript到JavaScript——在这种情况下,它们有时也被称为转译器

另见