解释型和编译型的区别

Java 答疑:编译解释器有何区别?Java 语言属于编译型编程语言还是解释编程语言?_java解释编译器的区别 我们都知道开发语言整体分为两类,一类是编译型编程语言,一类是解释编程语言。那么你知道二者有何区别吗?编译解释器又各自有何区分?Java 语言属于编译型编程语言还是解释编程语言呢?编译器是将源代码编译(翻译)成低级语言的程序。编译器把源程序的每一条语句都编译成机器语言,并保存为二进制文件,运行时计算机可以直接通过运行语言来运行此程序,速度会很快。英文译文解释器是直接执行用编程语言编写的指令的程序。只有在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度不如编译后的程序运行的快。 阅读详情

解释型和编译型的区别

解释型语言是什么?对比编译型语言有什么区别?

python解释器种类及特点?

python解释器的执行程序的流程?

python解释器的常用参数命令

编译型语言
  编译型语言的程序只要经过编译器编译之后,
每次运行程序都可以直接运行,不需要再次’翻译’
  优点:执行速度快。
  缺点:可移植性差,因为编译需要对操作系统的库做出链接,所以程序运行时需要用到特定的系统库

解释型语言
  解释语言编写的程序在每次运行时都需要通过解释器对程序进行动态解释和执行
即解释一条代码,执行一条
  优点:可移植好,因为只需要各种系统有python解释器便可运行,不需要乱七八糟的系统库支持
  缺点:执行速度慢,因为相比直接执行,多了一个翻译过程

额外知识:脚本语言
  脚本语言也算是解释器语言的一个子集。
特点:由文本储存,可直接运行
例如:你建立了一个程序,叫aa.exe,可以打开.aa为扩展名的文件.
   你为.aa文件的编写指定了一套规则(语法),当别人编写了.aa文件后,你的程序用这种规则来理解编写人的意图,并作出回应.那么,这一套规则就是脚本语言

扩展知识:动态语言
  一类在运行时可以改变其结构的语言
运行时发现数据类型,运行时可变其结构的语言
例如:不需要事先声明变量类型,同一变量可以被赋值为不同的对象类型
并且,运行时可以动态引进新的函数、对象、类,或将已有的函数可以被删除或是其他结构上的变化

python解释器的种类和特点?
  根据实现该解释器的语言分类
cpython,PyPy,Jython,Ironpython。分别是c语言,python,java,.net。
当然最常用的是cpython,因为其库最全。
值得注意的是,PyPy采用的技术可以显著提高运行速度

  根据交互方式分类
ipython:基于CPython之上的一个交互式解释器,对于用户交互非常好

python解释器的执行程序的流程?

Python首先先把代码(.py文件)编译成半成品的字节码,然后将其交给虚拟机,虚拟机一条一条将字节码指令翻译成cpu可识别的机器指令交由CPU执行,从而完成程序的执行。
额外知识:什么是字节码?
字节码是一种中间状态(中间码)的二进制代码,包含执行程序、由一序列 op 代码/数据对。不能直接被CPU执行,
需要直译器转译后才能成为机器码。机器码便能被CPU执行

具体流程
第一步:python解释器启动,此时就相当于启动了一个文本编辑器
第二步:从硬盘上将test.py的文件内容读入到内存中并翻译为字节码
  注意:解释器只关心文件内容,不关心文件后缀名
第三步:python解释器解释执行刚刚加载到内存中test.py的代码

扩展知识:被执行的python代码和解释器绑定在一起
  python进程其实就是解释器进程,解释器进程读取代码,呈现不同的效果。

python解释器的常用参数命令?
python -i test.py
运行后交互
python -m pdb test.py
运行后调试
python -O test.py
关闭断言
python -OO test.py
去掉assert语句和doc文档字符串

编译型解释区别 编译型解释区别 为什么要有编译型解释 计算机不能直接理解高级语言(Java、C、C++等),只能理解运行机器语言(机器码,即二进制码)。必须要把高级语言翻译成机器语言,计算机才能运行高级语言所编写的程序。 翻译的方式有两种,一个是编译,一个是解释编译解释都有翻译的意思,但是他们两个是不同的,最主要的区别就是翻译的时机不同。前者的源程序在编写完成后就进行翻译,之后即可在该平台运行;后者是在运行期间才翻译。所以前者运行速度快,后者跨平台性好。 编译型 (Compile) 用编译型语言写的程序执 阅读详情

相关推荐

解释编译

文章目录1.解释编译的基本概念2.解释编译的特性3. 静态语言,脚本语言4.`C/C++` 的编译运行过程详解4.1 编译过程4.1.1 编译4.1.1.1 编译预处理4.1.1.2 编译,优化阶段4.1.2 汇编4.2 链接过程4.3 举例:linux系统下GCC的编译链接4.3.1 实例hello.c->hello.exe4.3.2 objdump命令 计算机不能直接理解高级语言,只能直接理解机器语言(低级语言)所以必须把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。 1.解释

qq_43127160的博客 5461

编译解释区别

编译器、解释器定义(将高级语言或汇编语言的代码转换成机器认识的代码) 机器不能理解我们用高级语言编写的代码,所以要在程序执行前将高级语言“翻译”为机器语言。这是一个将源语言程序转化为目标语言程序的过程,它依靠翻译程序来完成。 编译器:将编译型语言(C++,Go)翻译为机器语言。(工作效率高,即时间快、空间省;交互性与动态性差,可移植性差) 解释器:将解释语言(JavaScript、Python...

秀秀的奇妙旅行 1万+

理解解释以及编译

目录 1什么是解释编译 1解释 2编译执行 3理解概念 2”解释编译“的对比 两者的区别 在接触程序设计的时候我们经常听到两个概念“解释”“编译”。 计算机编程语言可以这两个概念来分一下类。 1解释:Java、Basic、javascript、python 2编译型:C、C++、Delphi、Pascal、Fortran 这里需要注意一下java具有特殊性 java有编译解释性 Java编译程序生成字节码(byte-code),再由解释解释运行。 有...

weixin_53512372的博客 2075

解释编译区别

这方面在知乎上回答的很多,也很到位. 先给出参考的文献链接如下: 百度百科,知乎,《c语言程序设计》,Bluestorm’s Space,平凡生活 当然最主要的还是参考了课本《c语言程序设计》,毕竟课本比较专业 先从基本概念入手 机器语言:电脑CPU指令体系(系统)。CPU指令系统中包含大量的由01组成的指令码(序列),这些指令码可以直接由计算机识别。如下面两条指令码: 100000

Mr_Cat123的博客 1万+

解释性语言编译型语言的差别在哪里?

1类型不同,解释语言每次运行是需要将源代码解释成机器码,然后才能够执行,编译型语言一次编译成机器语言文件,以后就不需要再编译。 2、效率不同,解释语言运行效率比较低,编译型语言运行效率高。 3、适用平台不同,解释语言也是有优势的,那就是只要平台提供了解释器,就可以直接运行源代码,所以解释语言它是方便原程序移植的。编译型的语言存在着不足之处,那就是编译型的语言是需要特定平台的,没有办法移植到其他的平台。 ...

qq_52714771的博客 5300

编译型解释区别与特点

编译型解释区别与特点 1.理解编译型解释的原理 编译型 必须提前将所有源代码一次性转换成二进制指令,也就是生成一个可执行程序,比如C语言、C++等,这种编程语言称为编译型语言,使用的转换工具称为编译器。 我的理解:有一个专门负责翻译的程序,将我们所写的源代码转换成计算机能执行的代码 ​ 负责翻译的程序就叫做编译解释 可以一边执行一边转换,需要哪些源代码就转换哪些源代码,不会生成可执行程序,比如 Python、JavaScript、PHP等,这种编程

weixin_51141264的博客 496

python是编译型语言-解释编译型区别

解释语言是什么?对比编译型语言有什么区别?12python解释器种类及特点?12python解释器的执行程序的流程?12python解释器的常用参数命令编译型语言编译型语言的程序只要经过编译编译之后,每次运行程序都可以直接运行,不需要再次’翻译’优点:执行速度快。缺点:可移植性差,因为编译需要对操作系统的库做出链接,所以程序运行时需要用到特定的系统库解释语言解释语言编写的程序在每次运行时都需...

weixin_39890452的博客 448

编程语言中编译型解释区别

编程语言中编译型解释区别

一只苟延残喘的卑微蝼蚁 721

php解释编译型还是,解释语言编译型语言的区别

一、概念对于电脑而言,我们日常开发中使用的python、c++等高级语言并不能直接被电脑所理解执行,而是要把高级语言转换为机器语言,计算机才可以执行我们用高级语言编写的程序,通常来说,转换的方式有两种:编译解释。简单来说,所谓解释语言编译型语言,其实只是使用了不同的方式来讲高级语言转为计算机可以执行的机器语言而已。二、编译型语言编译型语言是需通过编译器(compiler)将源代码编译成机器...

weixin_34025386的博客 675

解释编译型 UDF 之间的区别

解释编译型 UDF 之间的主要区别解释 UDF 不能使用直接结构引用访问 ANSYS FLUENT 求解器数据; 他们只能通过使用 ANSYS FLUENT 提供的宏来间接访问数据。 例如,如果您想在 UDF 中引入新的数据结构,这可能很重要。 下面总结了解释编译型 UDF 之间的差异。 有关在 ANSYS FLUENT 中分别解释编译 UDF 的详细信息,请参阅 UDF帮助文档的解释UDF(p.235) 编译 UDF (p.241)。(文档下次上传,急要的可以联系我) ...

cxrcxr19970822的博客 2810

解释编译型区别

解释编译型的语言的区别编译型:直接编译成操作系统可执行的文件如C、C++。 解释性:执行的是有由其他的程序解释给操作系统,如html,java。java先编译成.class文件执行的时候,执行一句由java虚拟机解释一句。

lwwgtm的专栏 733

编译型程序解释程序的区别

编译型程序解释程序的区别

weixin_42888638的博客 532

编译型解释、动态语言静态语言区别

https://www.jianshu.com/p/83a47cc71aff

专心扫地 368
上一篇: 计算机视觉三大顶级会议
下一篇: python PEP8规范
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值