解释程序和编译程序的运行效率
Ⅰ 编译后的程序比边解释边执行的程序的运行速度快吗为什么
程序的编译是指将人可以理解的代码(如C的源代码)段编译成机器指令码(二级制指令),也就是处理堆栈、处理器、总线的指令,交由计算机自动执行。解释型语言是在需要执行时临时编译运行,执行时多了编译的过程,自然就要慢的多了。
比较特殊的是java,javac命令编译的结果虽然也是二进制文件,但实际也不是机器指令,而是优化后的代码,最后的执行是通过java虚拟机再次编译后执行。所以效率介于编译型和解释型之间。
目前java的执行速度已经有了大幅度的提升,但要想赶上或超越C 或者汇编,理论上是不现实的。
Ⅱ 编译执行和解释执行的区别
一、主体不同
1、编译执行:由编译程序将目标代码一次性编译成目标程序,再由机器运行目标程序。
2、解释执行:将源语言直接作为源程序输入,解释执行解释一句后就提交计算机执行一句,并不形成目标程序。
二、优势不同
1、编译执行:相比解释执行编译执行效率高,占用资源小,适合复杂程序
2、解释执行:开发速度快,出现严重BUG的几率小。
三、缺点不同
1、编译执行:兼容性差,例如在windows平台上写的编译程序一般不可以在unix平台上运行。
2、解释执行:解析需要时间,不生成目标程序而是一句一句的执行的方式会造成计算机资源的浪费,即执行效率低。
Ⅲ 编译器编译的时间, 要比解释语言运行的速度慢吗为什么
只能说说通常的情况,因为情况比较复杂
一般来说,编译的语言比解释性语言运行的速度块
不过编译时间的话就很难说了,和编译器本身有关系
解释语言可以不用专成 二进制代码直接运行
Ⅳ 什么语言编写的程序执行效率最低
解释型语言的程序执行效率最低,解释型语言通常不会进行整体性的编译和链接处理,解释型语言相当与把编译型语言中的编译和解释过程混合到了一起同时完成。每次执行解释型语言的程序都需要进行一次编译,因此解释型语言的程序运行效率通常较低,而且不能脱离解释其独立运行。
在各类程序设计语言中,相比较而言,执行效率最高的是机器语言编写的程序。在各种程序设计语言中,只有二进制代码组成的机器语言才能被计算机直接执行,其他的语言都必须进行编译,翻译成二进制代码才可被执行。
高级语言按程序的执行方式可以分为编译型和解释型两种。
1、编译型语言
编译型语言是指使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码一次性“翻译”成可被该平台硬件执行的机器码(包括机器指令和操作数),并包装成该平台所能识别的可执行程序的格式,这个转换过程称为编译(Compile)。编译生成的可执行程序可脱离开发环境,在特定的平台上独立运行。
2、解释型语言
解释型语言是指使用专门的解释器对源程序逐行解释成特定平台的机器码并立即执行的语言。解释型语言可以方便地实现源程序级的移植,但这是以牺牲程序执行效率为代价的。
Ⅳ 解释型与编译型程序那个执行的速度快
当然是C执行速度快了,而且不只快一点。Java也不是解释型语言吧,Java速度慢的原因是为了保持跨平台的特性而必须在Windows系统里面装虚拟机来翻译编译后的文件。 Basic语言是解释型的。Java的优势就是跨平台。
Ⅵ 脚本程序每次运行都要解释,运行效率为什么会比那些编译后的程序高 那些经过编译的可执行文件不是每次
一句话,条件不同,不能对比。
举例说,一个标准的可以计算PI值得C++程序,用g++进行交叉编译:不同的编译器版本生成的代码,性能有差别;针对不同操作系统,性能有差别。针对不同CPU(X86、Arm、MIPS等)的代码,性能也有差别。
不考虑算法的优化问题,编译优化问题,平台优化问题等等这些,那么可以确定,脚本语言一定慢于编译语言。
有时候上班堵车的时候,走路都比坐车快。但你能说你走比汽车快?
Ⅶ 编译型语言和解释型语言各自的优缺点是什么
一、编译型语言
优点:运行速度快,代码效率高,编译后的程序不可修改,保密性较好。
缺点:代码需要经过编译方可运行,可移植性差,只能在兼容的操作系统上运行 。
二、解释型语言
优点:可移植性较好,只要有解释环境,可在不同的操作系统上运行。
缺点:运行需要解释环境,运行起来比编译的要慢,占用资源也要多一些,代码效率低,代码修改后就可运行,不需要编译过程。
(7)解释程序和编译程序的运行效率扩展阅读:
编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,跨平台性差些。如C、C++、Delphi等。而相对的,解释性语言编写的程序不进行预先编译,以文本方式存储程序代码。在发布程序时,看起来省了道编译工序。但是在运行程序的时候,解释性语言必须先解释再运行。
Ⅷ 解释和编译有什么区别
一、与计算机的交流方式不同
1、解释程序不产生目标代码,它逐条地取出源程序中的语句,边解释,边执行;解释器把源代码文件边解释成机器语言边交给CPU执行。
三、开发便捷性
1、解释程序可以随时修改,立刻生效,改完源代码后,直接运行看效果
2、编译程序每次修改源代码,都要重新编译,生成机器码文件
四、运行速度
1、解释程序运行效率低,所有的代码均需经过解释器边解释变执行,速度比编译型慢很多
2、编译程序执行速度快,因为你的程序代码已经翻译成了是计算机可以理解的机器语言。
Ⅸ 什么叫解释执行、什么叫编译执行、哪个能快一点啊
解释执行是计算机语言的一种执行方式。由解释器现场解释执行,不生成目标程序。如BASIC便是解释执行(VB6之前的版本,还有批处理BAT文件也是),一般解释执行效率较低,低于编译执行。
编译执行是一种计算机语言的执行方式。由编译程序将目标代码一次性编译成目标程序,再由机器运行目标程序。如:PASCAL,C,C++,delphi等语言。效率高于解释执行。
Ⅹ 什么编写的程序执行效率最低
解释型语言编写的程序执行效率最低。
解释型语言,程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次。因此效率比较低。解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译,比如解释性basic语言,专门有一个解释器能够直接执行basic程序。
每个语句都是执行的时候才翻译。这样解释性语言每执行一次就要翻译一次,效率比较低。
解释型语言大的优势:
1、解释型语言提供了极佳的调试支持。一名Java程序员只需要几分钟就可以定位并修复一个“空指针异常”,因为Java运行环境不仅指明了异常的性质,而且给出了异常发生位置具体的行号和函数调用顺序(着名的堆栈跟踪信息)。这样的便利是编译型语言所无法提供的。
2、解释器比编译器容易实现。
3、解释型语言最大的优势之一是其平台独立性。
4、解释型语言也可以保证高度的安全性——这是互联网应用迫切需要的。