我已经读过这句话,解释器直接执行代码。但我不确定我明白这意味着什么。我一直试图在python代码的执行周期上得到一篇很好的文章。
据我所知,python代码转换为字节代码并提供给解释器。接下来会发生什么?有人可以清楚地解释其中的步骤,特别是字节码,解释器,操作系统和CPU之间的关系吗?
有些事情......
为了清晰起见而编辑:我的基本困惑是,如果CPU正在执行代码,那么说法是什么意思'解释器执行代码'?
答案 0 :(得分:1)
这一声明在整个过程中挥舞着巨大的声音。这是怎么回事,试着跟上:
CPU永远不会将字节码视为除数据之外的任何内容,并且不需要以任何其他方式查看它。
答案 1 :(得分:0)
直接执行代码意味着解释器不会将解释的程序表示为机器代码,然后允许实际的机器执行它。相反,解释器本身执行指令(有或没有转换为某种字节码)。
从技术上讲,机器执行解释程序的代码,但事实上仍然没有生成新的机器代码。
对比方法是静态编译的代码(转换为机器代码,无需进一步解释)和JIT(可选转换为字节码,在运行时将字节码或文本程序转换为机器代码,允许机器执行)。