美文网首页python 高级码农成才之路
*禁白嫖* python解释器编译器的理解

*禁白嫖* python解释器编译器的理解

作者: 幼姿沫 | 来源:发表于2021-01-15 14:34 被阅读0次

禁白嫖的含义就是 

尊重我的劳动成果  点赞 打赏 转发 谢谢您各位捧场

编程语言的分类

编译型与解释型

计算机是不能够识别高级语言的,所以当我们运行一个高级语言程序的时候,就需要一个“翻译机”来从事把高级语言转变成计算机能读懂的机器语言的过程。这个过程分成两类,第一种是编译,第二种是解释。

编译器:是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快; 

解释器:是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快. 

这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)

编译型相当于厨师直接做好一桌子菜,顾客来了直接开吃,而解释型就像吃火锅,厨师把菜洗好,顾客需要自己动手边煮边吃。

编译解释型语言的区别


python程序执行原理

1.把源代码转换为字节码

2.把转化好的字节码转发到python虚拟机中PVM中执行


解释器

以上是对编译型语言和解释型语言的一个简单粗暴的区分,但是 Python(这里主要是指CPython)并不是严格的解释型语言;

因为 Python 代码在运行前,会先编译(翻译)成中间代码,每个 .py 文件将被换转成 .pyc 文件,.pyc 就是一种字节码文件,它是与平台无关的中间代码,不管你放在 Windows 还是 Linux 平台都可以执行,运行时将由虚拟机逐行把字节码翻译成目标代码。

我们安装Python 时候,会有一个 Python.exe 文件,它就是 Python 解释器,你写的每一行 Python 代码都是由它负责执行,解释器由一个编译器和一个虚拟机构成,编译器负责将源代码转换成字节码文件,而虚拟机负责执行字节码,所以,解释型语言其实也有编译过程,只不过这个编译过程并不是直接生成目标代码,而是中间代码(字节码),然后再通过虚拟机来逐行解释执行字节码。

总结

Python代码首先会编程一个字节码文件,再由虚拟机逐行解释,把每一行字节码代码翻译成目标指令给CPU执行。

相关文章

  • *禁白嫖* python解释器编译器的理解

    编程语言的分类 编译型与解释型 计算机是不能够识别高级语言的,所以当我们运行一个高级语言程序的时候,就需要一个“翻...

  • Python笔记

    人生苦短,我用Python 编译器:解释器 编译器 Python属于解释型语言,读取一行,翻译一行,执行一行。 ...

  • 浅析Python解释器的设计(二)

    从现代编译器的角度看,解释器和编译器的边界已经相当的模糊。我们后面的讨论说到的编译器就是Python的解释器,没有...

  • Python的认识

    人生苦短,我用 Python —— Life is short, you need Python 解释器:编译器翻...

  • JavaScript代码是如何被执行的

    基本概念 编译器,解释器 抽象语法树 字节码和机器码 编译器和解释器 计算机不能直接理解高级语言,只能直接理解机器...

  • pycharm软件学习

    1、external libraries python项目的解释器/编译器 2、external librarie...

  • JavaScript代码是如何被执行的

    基本概念 编译器,解释器抽象语法树字节码和机器码 编译器和解释器 计算机不能直接理解高级语言,只能直接理解机器语言...

  • *禁白嫖*python ----- 工厂模式

    禁白嫖 点赞 转发 适当打赏即可 ''' 1.python的工厂模式 1.1 工厂方法模式的定义 工厂函数、工厂类...

  • 初始Python

    1.Python科普 python科普(编译器、解释器)python作者:吉多·范罗苏姆(Guido van Ro...

  • Python

    一、认识 Python 1.解释器是把其他语言解释成计算机语言 解释器分为解释器和编译器。解释器是解释性语言:源代...

网友评论

    本文标题:*禁白嫖* python解释器编译器的理解

    本文链接:https://www.haomeiwen.com/subject/vnxwaktx.html