编译执行和解释执行有什么区别

什么是脚本:脚本是嵌入式代码,无需编译器就可以在环境中运行,起到解释作用

动态程序一般有两种方式:

1、二进制方式是将我们编写的程序进行编译,编程机器可以识别的指令代码,然后再执行,这种已编译好的程序让我们只能执行,使用,却看不他的程序内容

2、脚本方式是一条条命令,在执行时,是由系统的解释器,将其一条条翻译成机器可识别的指令,例如shell脚本是由shell程序执行的,js是由浏览器解释执行的

下面解释一下解释执行和编译执行有什么区别:

1、编译执行是利用事先编写好的成为编写程序的机器语言程序,作为系统软件存放在计算机内,当高级语言源程序进入计算机,被这个翻译成目标程序,以完成源码要处理的运算并取得结果

2、解释方式是源程序进入计算机内,解释程序边扫描边解释,逐句输入逐句翻译,计算机一步一步执行,并不产生目标程序

机器码和字节码

1、机器码是CPU直接读取运行的机器指令,运行速度非常快,但是晦涩难懂,一般接触不到

2、字节码是一种中间状态的二进制代码,需要直译器转译后才可能成功的成为机器码
针对优缺点,可以从以下几个方面分析。

针对优缺点,可以从以下几个方面分析。

从启动效率来看,解释执行不需要进行编译操作,而编译执行,要经过编译过程。解释执行启动速度更快。

从运行效率来看,因为编译执行只需要编译一次,以后再运行就无需编译,而解释执行每次都要经过解释过程,所以编译执行效率更高。

从内存使用方面来看,编译执行需要生成编译后的机器码文件,而解释执行时逐句解释执行,所以解释执行对内存占用更少。

从跨平台的角度来看,因为解释执行每次可以根据不同的平台进行解释,例如js在linux和windows都可以运行,而C语言在windows下编译后的文件,只能在windows下才行执行。
  • 3
    点赞
  • 7
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:技术黑板 设计师:CSDN官方博客 返回首页
评论

打赏作者

never疯

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值