巧之后又用于Pascal和P-code，以及Smalltalk和二进制码，在很多时候，中间过渡的代码往往是解译，而不是编译的。如果所使用的翻译的机制是将所要翻译的程序代码作为一个整体翻译，并之后运行内部格式，那么这个翻译过程就被称为编译。因此，一个编译器是一个将人可阅读的程序文本（叫做源代码）作为输入的数据，然后输出可执行文件（）。所输出的可执行文件可以是机器语言，由计算机的中央处理器直接运行，或者是某种模拟器的二进制代码。如果程序代码是在运行时才即时翻译，那么这种翻译机制就被称作直译。经直译的程序