编译(compiled)和解释语言(interpreted language)的区别

编程语言通常分为两种类型的语言之一——编译语言或解释语言。然而,不同之处不在于语言;它在执行中。如果说两者都是语言实现的属性,而不是语言本身的属性,那就没有错。实现一种编程语言意味着弥补从程序员的高级思维到机器的0和1之间的差距。如果做得有效,程序员可以专注于实际问题,而不是机器的细节。因此,可以根据实现来编译或解释编程语言。...

编程语言通常分为两种类型的语言之一——编译语言或解释语言。然而,不同之处不在于语言;它在执行中。如果说两者都是语言实现的属性,而不是语言本身的属性,那就没有错。实现一种编程语言意味着弥补从程序员的高级思维到机器的0和1之间的差距。如果做得有效,程序员可以专注于实际问题,而不是机器的细节。因此,可以根据实现来编译或解释编程语言。

两种编程语言都有各自的优点。有些语言要求在执行任何代码之前编译所有代码。其他语言在执行代码时解释每条指令。事实上,编译语言通常是由程序员在程序员的计算机上编译的;当程序员共享软件时,他/她共享已编译的0和1,但不共享源代码。但是,使用解释语言时,代码将以您输入的相同格式保存,并且必须在运行时进行翻译。让我们看一下编译语言和解释语言之间的详细比较。

 

编译(compiled)和解释语言(interpreted language)的区别

什么是汇编语言(a compiled language)?

计算机只能执行机器语言,这是中央处理器(CPU)的语言,非常简单。任何编程语言实现的目标都是将源程序翻译成机器语言,以便由CPU执行。所有语言实现在将中间表示转换为机器语言之前,都将源程序转换为某种中间表示。把程序翻译成机器语言的最直接的方法叫做编译。用编译语言编写的程序在运行前必须转换成不同的格式。在执行之前,源代码必须转换成机器可读的指令。简而言之,实现通常是编译器而不是解释器的语言称为编译语言。

 

编译(compiled)和解释语言(interpreted language)的区别

什么是解释性语言(an interpreted language)?

解释器是用其他语言编写并编译成机器可读语言的程序。解释器本身就是机器语言程序,用来从被解释的语言中读取源程序并进行解释。相反,解释语言在运行程序之前不会将源代码编译成机器语言。它只是在飞行中解释代码。因此,您不会得到编译错误的好处或缺点。解释语言需要一个称为解释器的软件,解释器接受源代码,一次执行一条指令。当您运行一个解释源程序时,实际上是运行解释器。解释器是一种机器语言程序,它执行您用解释器语言编写的所有程序。

 

编译语言和解释语言的区别

编译和解释语言基础

–用编译语言编写的程序在运行前必须转换成不同的格式。在执行之前,源代码必须转换成机器可读的指令。相反,解释语言在运行程序之前不会将源代码编译成机器语言。它只是在飞行中解释代码。解释语言需要一个称为解释器的软件,解释器接受源代码,一次执行一条指令。

编译器与解释器

–对于编译语言,从源代码到执行至少有两个步骤,而对于解释语言,只有一个步骤–执行。用解释语言编写的程序不会被编译,而是在运行时被另一个程序解释。用编译语言编写的程序经过一个过程,将其从人类可读的文本格式转换为机器可读的格式。一个称为编译器的程序进行这种转换。

可用性

–编译程序比解释程序运行得快,但解释程序可以在程序运行时进行修改。这使得解释程序非常适合编写现场表演软件。使用编译过的语言会很好,因为在编译源代码时会发现很多bug。这些被称为编译错误的bug阻止了代码的编译。相反,解释语言是不编译的,因此您不会得到编译错误的好处或缺点。

调试

–对于解释语言,所有调试都发生在运行时。没有编译步骤可以在编译过程中抛出代码中的所有语法错误;相反,您必须运行程序来查找其中的任何错误。当解释程序修改文件或对永久资源进行任何更改时,这将成为一个问题。这使得一些bug更难捕捉,因为代码不需要编译。解释语言在联机环境中也存在一些安全问题,因为恶意代码可能在执行过程中被注入。

编译语言与解释语言:比较图

编译(compiled)和解释语言(interpreted language)的区别

 

总结 - 已编译的(of compiled) vs. 解释语言(interpreted language)

简而言之,编译语言和解释语言都有各自的优势。有些语言要求在执行任何代码之前编译所有代码。其他语言在执行代码时解释每条指令。两者之间的主要区别在于,从源代码到使用编译语言执行至少有两个步骤。然而,对于解释语言,只有一个步骤——执行。编译的程序比解释的程序运行得快,但是解释的程序可以在程序运行时进行修改。

 

  • 发表于 2021-06-26 05:11
  • 阅读 ( 765 )
  • 分类:IT

你可能感兴趣的文章

编译时间(compile time)和运行时(runtime)的区别

关键区别-编译时与运行时 大多数程序都是用高级编程语言编写的。这些编程语言的语法与英语相似。高级语言很容易被人类理解,但计算机却无法理解。因此,编写的程序或源代码应转换成机器可理解的格式。它被称为机器...

  • 发布于 2020-10-19 10:25
  • 阅读 ( 771 )

脚本语言(scripting language)和程序设计语言(programming language)的区别

...程语言之间有什么区别?   什么是脚本语言(a scripting language)? 脚本语言,顾名思义,是一种支持脚本的编程语言。脚本语言绑定了一组协作解决特定问题的软件组件。脚本假定存在强大的组件,并提供将它们连接在一起的方...

  • 发布于 2021-06-26 05:00
  • 阅读 ( 662 )

编译(compiled)和解释语言(interpreted language)的区别

...解释器的语言称为编译语言。   什么是解释性语言(an interpreted language)? 解释器是用其他语言编写并编译成机器可读语言的程序。解释器本身就是机器语言程序,用来从被解释的语言中读取源程序并进行解释。相反,解释语言...

  • 发布于 2021-06-26 05:11
  • 阅读 ( 765 )

翻译(translator)和口译译员(interpreter)的区别

主要差异翻译(main difference translator) vs. 口译译员(interpreter) Translation is the conversion of a material from one language to another language without distorting its original meaning and value. There are two basic forms of translation: translation of written material and t...

  • 发布于 2021-06-28 00:16
  • 阅读 ( 662 )

编译器解释器(compiler interpreter)和汇编程序(assembler)的区别

...较低。因此,它们被认为是快速语言。 什么是口译译员(interpreter)? 解释器也是一种将高级程序转换成机器代码的语言翻译器。与编译器不同,解释器将源代码逐行转换为机器代码。由于它逐行检查,扫描时间更短。但总体执行...

  • 发布于 2021-06-30 18:09
  • 阅读 ( 1398 )

翻译(translator)和程序设计语言中的解释器(interpreter in programming language)的区别

...序是常见的翻译器。 什么是程序设计语言中的解释器(an interpreter in programming language)? 解释器是将高级编程语言转换为机器语言的另一种类型的翻译器。它将源代码逐行转换为机器代码。因为它一次只检查一行代码,所以扫描时...

  • 发布于 2021-06-30 18:15
  • 阅读 ( 366 )

编译程序(compiler)和交叉编译器(cross compiler)的区别

编译器和交叉编译器的主要区别在于,编译器是一种将用高级编程语言编写的计算机程序转换成机器语言的软件,而交叉编译器是一种可以为运行编译器的平台以外的平台创建可执行代码的编译器。 程序员用高级语言为计算机...

  • 发布于 2021-06-30 18:25
  • 阅读 ( 351 )

脚本语言(scripting language)和程序设计语言(programming language)的区别

...别的比较 关键术语 脚本语言 什么是脚本语言(a scripting language)? 脚本语言是一种一次解释和执行一个命令的编程语言。这些语言更容易学习和编写代码。使用脚本语言编写的程序由解释器转换成机器代码。它一次读取一行源代...

  • 发布于 2021-07-01 02:49
  • 阅读 ( 263 )

石斑鱼类(ide)和编译程序(compiler)的区别

IDE和编译器之间的主要区别在于IDE是一个软件套件,由开发和测试软件应用程序所需的工具组成,而编译器是一个将用高级编程语言编写的源代码翻译成低级机器代码的程序。 IDE提供了一个创建、构建和测试软件应用程序的环...

  • 发布于 2021-07-01 03:13
  • 阅读 ( 393 )

链接器加载程序(linker loader)和编译程序(compiler)的区别

链接器加载程序和编译器之间的主要区别在于,链接器将编译器生成的一个或多个对象文件合并到一个可执行文件中。同时,加载程序将程序放入内存并准备执行,同时编译器将源代码转换为目标代码。 计算机程序是在计算机...

  • 发布于 2021-07-01 04:45
  • 阅读 ( 671 )
fuc4102210
fuc4102210

0 篇文章

相关推荐