其他分享
首页 > 其他分享> > 编译型语言与解释型语言的差别

编译型语言与解释型语言的差别

作者:互联网

  一般来讲, 解释器可以带来更大的灵活性且能对程序做出更好的诊断。有些语言特征如果不用解释的方式,几乎无法实现。例如一个程序可以为自己生成新的代码片段,而且随后执行他们。将有关程序实现的决策推迟到运行时在进行,这种方式称为迟约束。

  编译方式能带来更好的性能。有些决策是可以在编译时就做的决策,不必等到运行时再去做。利用编译器可以保证x在位置49378处,程序无论在任何地方引用x,他都可以到该位置访问x。与此相反, 解释器每次访问x时,都需要到一个表格里去查找他,一变找到他的位置。由于一个程序的最后版本只被编译一次,但是通常会执行很多次,可以节约下相当可观的时间。

  很多语言实现中采用的是两者的混合形式。预处理器是一种初始的翻译器。

  有趣的是很多编译器是自集的:他们用他们所编译的语言来编写的。编译器自举~;

标签:解释器,差别,语言,可以,程序,编译,编译器
来源: https://www.cnblogs.com/liushanyuan/p/14678057.html