据我理解:
解释的语言是一种高级语言,由解释器(一个将高级语言转换为机器代码然后执行的程序)运行和执行;它一次只处理一些程序。
编译的语言是一种高级语言,其代码首先由编译器(将高级语言转换为机器代码的程序)转换为机器代码,然后由执行器(运行代码的另一个程序)执行。
如果我的定义是错误的,请纠正我。
现在回到Python,我对此感到有点困惑。在任何地方,您都知道Python是一种解释语言,但是它被解释为一些中间代码(比如字节码或IL),而不是机器代码。那么,哪个程序然后执行IM代码?请帮助我理解Python脚本是如何处理和运行的。
发布于 2011-07-31 13:40:52
CPU只能真正理解机器代码。对于解释程序,解释器的最终目标是将程序代码“解释”为机器代码。然而,现代的解释语言通常不会直接解释人类代码,因为它效率太低。
Python解释器首先读取人工代码并将其优化为某些中间代码,然后再将其解释为机器代码。这就是为什么您总是需要另一个程序来运行Python脚本,而在C++中,您可以直接运行编译好的代码可执行文件。例如,c:\Python27\python.exe或/usr/bin/python。
https://stackoverflow.com/questions/6889747
复制相似问题