问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于“编译型语言”和“解释性语言”的区别

发布网友 发布时间:2022-03-31 08:05

我来回答

5个回答

懂视网 时间:2022-03-31 12:27

编译型是使用编译器编译后生成计算机硬件可直接执行的指令,解释型是在运行时才由解释器逐语句去执行。编译型代表:C&C++,C#,Java,解释型代表:html,javascript。区别有很多。

  

  1、编译型语言的源代码有错误编译不通过,无法生成可执行代码,更无法执行程序;解释型语言只有执行时才会判断是否出错,即使一句出错,也可以继续执行下一句。

  

  2、编译型语言都为强类型,即必须说明数据的类型,如int a;解释型语言多为弱类型,如js中var a,a可以为字符串也可以为整形。

  

  3、编译型语言执行效率上大大优于解释型,主要因为编译器在编译过程中会根据不同平台自动优化目标代码,且特点为1次编译,N次运行,另外强类型的程序安全性高;解释型语言无上述过程,逐语句翻译造成执行效率低下,每次执行都会重复解释一遍,并且安全性低。

  

  4、编译型程序适合对通用性,重复性,高效性有要求的系统,如开发操作系统;相比解释型语言更具灵活性,如开发网站前台页。

热心网友 时间:2022-03-31 09:35

1、程序控制权不同:

对于解释性语言而言,程序运行时的控制权在解释器(jre,.net)而不再用于程序。编译型语言对于编译器而言,运行时的控制权在用户程序。

2、运行速度不同:

一些网页脚本,服务器脚本以及辅助开发接口这样的对速度要求不高,对不同系统的兼容性有一定要求的程序则通常使用解释性语言,如Java、JavaScript、VBScript、Perl、Python、Ruby、Matlab等等。

编译语言由于程序执行速度快,同等条件下对系统的要求比较低,因此像开发操作系统、大型应用程序、数据库系统等时都采用它,像C/C++,Pascal/Object Pascal(Delphi)等都是编译型语言。

3、移植性不同:

解释型语言,例如Java语言,Java程序首先通过编译器编译成class文件,如果在Windows平台上运行,则通过Windows平台上的Java虚拟机(VM)进行解释。如果运行在Linux平台上,则通过Linux平台上的Java虚拟机进行解释执行。

所以说能跨平台,前提是平台上必须要有相匹配的Java虚拟机。如果没有Java虚拟机,则不能进行跨平台。

编译型语言,例如C语言,用C语言开发程序后,需要通过编译器把程序编译成机器语言(即计算机可以识别的二进制文件,因为不同的操作系统识别的二进制文件是不同的),所以C语言程序进行移植后,需要重新编译(如Windows编译成ext文件,Linux编译成erp文件)。

参考资料来源:百度百科-解释性语言

参考资料来源:百度百科-编译型语言

热心网友 时间:2022-03-31 10:53

解释性语言和编译型语言的区别与不同之处如下:

计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。  

 翻译的方式有两种:

两种方式只是翻译的时间不同。

热心网友 时间:2022-03-31 12:27

1.编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。
2.解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。
3.C/C++ 等都是编译型语言,而Java,C#等都是解释型语言。
4.虽然Java程序在运行之前也有一个编译过程,但是并不是将程序编译成机器语言,而是将它编译成字节码(可以理解为一个中间语言)。
在运行的时候,由JVM将字节码再翻译成机器语言。
5.脚本语言一般都有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。JAVASCRIPT,ASP,PHP,PERL,Nuva都是脚本语言。C/C++编译、链接后,可形成独立执行的exe文件。

热心网友 时间:2022-03-31 14:19

编译型语言写的程序执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。
计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。 翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。编译型语言写的程序执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高,但也不能一概而论,部分解释型语言的解释器通过在运行时动态优化代码,甚至能够使解释型语言的性能超过编译型语言。 解释则不同,解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译,比如解释性basic语言,专门有一个解释器能够直接执行basic程序,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就要翻译一次,效率比较低。解释是一句一句的翻译。 编译型与解释型,两者各有利弊。前者由于程序执行速度快,同等条件下对系统要求较低,因此像开发操作系统、大型应用程序、数据库系统等时都采用它,像C/C++、Pascal/Object Pascal(Delphi)等都是编译语言,而一些网页脚本、服务器脚本及辅助开发接口这样的对速度要求不高、对不同系统平台间的兼容性有一定要求的程序则通常使用解释性语言,如Java、JavaScript、VBScript、Perl、Python、Ruby、MATLAB 等等。 但随着硬件的升级和设计思想的变革,编译型和解释型语言越来越笼统,主要体现在一些新兴的高级语言上,而解释型语言的自身特点也使得编译器厂商愿意花费更多成本来优化解释器,解释型语言性能超过编译型语言也是必然的。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
中医能辅助治疗腹水吗 飞行堡垒7零度左右电池显示0%一直正在充电充不进电怎么解决?_百度... ...手机就关机了。一直充也充不进电。为什么呢 富士s205可以用银燕 BY—30stz 的闪光灯么? 富士S205EXR相机适合什么样型号的外置闪光灯 请教高人,富士s205拍微距,能配环闪吗,什么型号,怎么配。谢谢。 逛超市不愿意提东西的男人,还要吗? 男子每天逛超市,一分没花还倒赚3万,经理:难怪监控查不出来,你怎么... 中国g5大学什么意思 求解,上海电信全屋WiFi性价比高不高 女,今年39岁,尿酸指数374 怎么能让全身经络畅通? 全身经络疼痛是怎么回事? 全身经络调理有什么好处 碗蒸豆腐脑的做法,要完整全面的 万病皆为经络不通,哪五个简单动作,可以拉开全身... 经络不通老得快,坚持做哪些动作,疏通全身经络,... 山东有大面积种灯笼果的吗? 如何疏通开全身经络 怎样才能打通全身的经络? 全字开头的两字词语,如全力、全面等 有什么简单的方法打通全身经络,求专家回答。 柳宗元《游黄溪记》选用什么样的写作方法 为什么叫西南、西北而不是南西、北西?跟易经八卦... 灯笼果湖北能种吗 求一套完整的全面的酒桌礼仪 游黄溪记的主要写作方法是 中国海岸线为什么叫西太平洋? 访谈法的什么阶段其所有工作都将围绕如何得到完整... 杨家坪动物园为什么又叫西西 怎样疏通全身经络气血? 吃什么食物可以降低尿酸 39健康 做全身经络有什么好处 尿酸高危害大,排出尿酸的方法有哪些? 尿酸偏高的治疗方法 全身筋络疼痛,后背也疼,怎么治疗 林肯葛底斯堡演说的背景介绍 39岁,尿酸358.3,冬天脚趾头疼,跟这指标又关系吗? 按摩全身经络的好处 富尔顿演说的演说背景 尿尿酸的参考值范围是多少 非常值得一看的帖子如何打通全身经络! 斯大林和罗斯福发表演说的背景是什么? 我今年66岁餐前血糖5.6餐后血糖9.1算糖尿病吗?我尿... 全身经络做一次有效果吗? 丘吉尔发表“铁幕”演说的背景 林肯的哥底斯堡演讲的背景及意义 正常人的血尿酸值女性为100ml多少mg 2.5 血脂偏高,尿酸偏高需要治疗吗?具体指标 I have a dream 演讲背景