编译和解释的区别是什么?

编译和解释的区别是什么?,第1张

编译和解释的区别是与计算机的交流方式不同、运行环境不同、运行速度不同。

一、与计算机的交流方式不同

编译是将源程序翻译成可执行的目标代码,执行可执行程序文件,翻译与执行是分开的。

解释程序不产生目标代码,它逐条地取出源程序中的语句,边解释边执行,解释器把源代码文件边解释成机器语言边交给CPU执行。

二、运行环境不同

编译程序跨平台性不好,不同 *** 作系统,调用底层的机器指令不同,需为不同平台生成不同的机器码文件,编译程序每次修改源代码,都要重新编译,生成机器码文件。

解释程序可跨平台使用,因为解释器已经做好了对不同平台的交互处理,用户写的源代码不需要再考虑差异性,源代码所有平台都可以直接执行,解释程序可以随时修改,立刻生效,改完源代码后,直接运行看效果。

三、运行速度不同

编译程序执行速度快,因为你的程序代码已经翻译成了是计算机可以理解的机器语言。

解释程序运行效率低,所有的代码均需经过解释器边解释变执行,速度比编译型慢很多。

编译程序能生成目标程序,而解释程序不能。

补充:

1、编译程序是整体编译完了,再一次性执行。

2、而解释程序是一边解释,一边执行。 解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。

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

4、而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的。这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)

编译程序、解释程序均是计算机语言处理程序。

其区别主要为:

解释程序直接执行源程序或源程序的内部形式,一般是读一句源程序,翻译一句,执行一句,不产生目标代码,如basic解释程序。编译程序是将高级语言书写的源程序翻译成与之等价的低级语言的目标程序。编译程序与解释程序最大的区别之一在于前者生成目标代码,而后者不生成;此外,前者产生的目标代码的执行速度比解释程序的执行速度要快;后者人机交互好,适于初学者使用。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7867638.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存