编程语言的两种执行方式

一、概述

  编程语言按执行方式来划分,分为:编译和解释两种。在介绍两种方式的概念之前,先介绍以下几种概念:

源代码:采用某种编程语言编写的计算机程序,人类可读,例如:res = 1 + 1;

目标代码:指计算机可以执行,但人类不可读(专家除外),例如一组由0和1组成的字符串。

而怎么把人类编写的程序,变成机器可以执行的目标代码呢? 这里就出现了程序执行的两种方式:编译和解释。

二、编译和解释的含义

编译:把源代码一次性转化为目标代码的过程,如图:

从图中可以看出:当程序员编写好程序,经过编译器翻译为目标代码,然后计算机就可以执行这段代码,并获取程序该有的输入,输出相应的结果。这就是编译过程。

解释:将源代码逐条转换成目标代码同时逐条运行的过程,如图:

结合上图,解释的过程可以这样描述:将源代码根据代码行数和执行方式,逐条的提取源代码的内容,并逐条的转换为目标代码,同时逐条运行目标代码。在这个过程中读取源代码和程序输入,并输出相应的结果,是通过解释器来完成的。

三、比较编译和解释两种执行方式

编译:一次性翻译,之后不再需要源代码(类似英文翻译),可以直接使用目标代码运行程序。

解释:每次程序运行都需要源代码参与(类似于实时同声翻译)。

四、静态语言和脚本语言

1、概述

  根据编译和解释这两种不同的程序执行方式,可以把编程语言分为两类:静态语言和脚本语言。

2、定义

静态语言:使用编译执行的编程语言,如:C/C++、JAVA语言。

脚本语言:使用解释执行的编程语言,如:Python、JAVAScript、PHP语言。

3、比较

静态语言和脚本语言相比较,二者执行方式不同,优势各不同:

静态语言:编译器一次性生成目标代码,优化更充分,可以在生成目标代码的过程中,运用更多的优化过程,使得产生的目标的代码的执行速度更快;

脚本语言:执行程序时需要源代码,维护更灵活,可以跨多个操作系统平台运行。

猜你喜欢

转载自blog.csdn.net/yangyechi/article/details/82981407