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

大多数程序都是用高级编程语言编写的。这些编程语言的语法与英语相似。高级语言很容易被人类理解,但计算机却无法理解。因此,编写的程序或源代码应转换成机器可理解的格式。它被称为机器代码。将源代码转换为机器代码的时间段称为编译时。语法分析、语义分析和代码生成等任务在编译时发生。运行编译时生成的可执行文件的时间段称为运行时。这两个术语都与不同的程序生命周期阶段有关。本文讨论编译时和运行时之间的区别。编译时和...

关键区别-编译时与运行时

大多数程序都是用高级编程语言编写的。这些编程语言的语法与英语相似。高级语言很容易被人类理解,但计算机却无法理解。因此,编写的程序或源代码应转换成机器可理解的格式。它被称为机器代码。将源代码转换为机器代码的时间段称为编译时。语法分析、语义分析和代码生成等任务在编译时发生。运行编译时生成的可执行文件的时间段称为运行时。这两个术语都与不同的程序生命周期阶段有关。本文讨论编译时和运行时之间的区别。编译时和运行时的关键区别在于,编译时是将源代码转换为可执行文件的编程生命周期阶段,而运行时是指运行编译时生成的可执行文件的编程生命周期阶段。在编译时发生的错误称为编译时错误,而在运行时发生的错误称为异常。

目录

1. 概述和主要区别
2. 什么是编译时间
3. 什么是运行时
4.编译时和运行时的相似性
5. 并行比较-以表格形式显示编译时与运行时
6. 摘要

什么是编译时间(compile time)?

程序员可以用编程语言向计算机发出指令。程序员使用的大多数编程语言都是高级编程语言。它们的语法与英语相似。这些语言很容易被人类阅读和理解。源代码是使用高级语言编写的程序。源代码可以包含一组行或多行,具体取决于任务。计算机无法理解使用高级语言提供的指令。计算机能理解机器代码。因此,源代码必须编译成机器代码才能成为可执行程序。编程生命周期阶段称为编译时。这是完成编译过程的时间段。语法分析和编译操作包括语法分析和代码生成。

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

图01:编译时和运行时

在编译过程中,可能会发生错误。它们是由于语法和语义错误而出现的。这些错误避免了编译的成功。编译器指示编译时错误。它将显示错误发生在哪一行的消息。一些常见的编译时错误包括缺少大括号、标识符拼写错误和关键字拼写错误。当编译错误发生时,程序员应该修复这个错误。

什么是运行时(runtime)?

运行时也称为执行时间。它是一个程序运行的时间,与其他程序生命周期阶段(如编译时间、加载时间等)不同。当编译过程完成时,它由用户运行。运行编译时生成的可执行文件的时间段称为运行时。术语“运行时”可以用来指代错误。即使程序编译正确,也可能有错误。

这些错误不会给出预期的输出。它还可以终止程序的执行。这些错误发生在运行时,因此称为运行时错误或异常。当数组越界且内存不足时,某些运行时错误将数字除以零。

什么是编译时与运行时的相似性(the similarity between compile time and runtime)?

  • 编译时和运行时都是程序生命周期阶段。

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

编译时与运行时
编译时是将源代码转换为可执行文件的编程生命周期阶段。 运行时是程序运行的时间,与其他程序生命周期阶段(如编译时间、链接时间和加载时间)不同。
错误
编译时错误是语法和语义错误。 运行时错误称为异常。

总结 - 编译时间(compile time) vs. 运行时(runtime)

编译时和运行时是编程生命周期的两个阶段。本文讨论了编译时和运行时之间的区别。在编译时将程序员的源代码转换为机器代码。运行编译时生成的可执行文件称为运行时。当编译时出现错误时,编译器会根据错误显示一条消息。即使是编译的程序,也可能无法给出预期的输出。在这种情况下,这是一个运行时错误或异常。编译时和运行时的区别在于,编译时是将源代码转换为可执行文件的编程生命周期阶段,而运行时是指运行编译时生成的可执行文件的编程生命周期阶段。

引用

  • 发表于 2020-10-19 10:25
  • 阅读 ( 773 )
  • 分类:IT

你可能感兴趣的文章

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

编程语言通常分为两种类型的语言之一——编译语言或解释语言。然而,不同之处不在于语言;它在执行中。如果说两者都是语言实现的属性,而不是语言本身的属性,那就没有错。实现一种编程语言意味着弥补从程序员的高级...

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

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

编译-解释器与汇编程序的主要区别在于编译程序一次将整个高级语言程序转换为机器语言,而解释器逐行将高级语言程序转换为机器语言,汇编程序将汇编语言程序转换为机器语言。 计算机程序是计算机执行某项任务的一组指...

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

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

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

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

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

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

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

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

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

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

口译译员(interpreter)和jit编译器(jit compiler)的区别

解释器和JIT编译器的主要区别在于解释器是一种逐行将源代码转换成本机代码的软件,而JIT编译器是JVM中的一个组件,它通过在运行时将字节码编译成本机代码来提高Java程序的性能。 解释器是一种程序,它将程序员编写的指令...

  • 发布于 2021-07-01 05:51
  • 阅读 ( 520 )

单程(single pass)和多程编译器(multipass compiler)的区别

单过程编译器和多过程编译器的主要区别在于,单过程编译器是一种只将源代码通过每个编译单元一次的编译器,而多过程编译器将编译分离为多个过程,其中每个过程都将继续上一个过程的结果。 计算机程序是计算机执行某...

  • 发布于 2021-07-01 06:07
  • 阅读 ( 525 )

阶段(phases)和编译过程(passes of compiler)的区别

编译器的阶段和过程之间的主要区别在于,阶段是编译过程中的步骤,而过程是编译器遍历源代码的次数。 程序员用高级语言编写计算机程序。这些语言遵循与英语相似的语法。程序员更容易理解这种语言,但计算机不理解它...

  • 发布于 2021-07-01 08:20
  • 阅读 ( 206 )

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

解释语言和编译语言的主要区别在于,解释语言逐行将源代码转换为机器代码,而编译语言则一次将源代码转换为机器代码。 计算机程序是一组指令,指示CPU执行一个或多个已定义的任务。有多种编程语言。高级编程语言的语...

  • 发布于 2021-07-01 22:35
  • 阅读 ( 620 )

编译程序(compiler)和调试器(debugger)的区别

编译器和调试器的主要区别在于,编译器将源代码转换为等价的机器代码来执行程序中定义的任务,而调试器则帮助识别程序错误并修复它们。 一般来说,计算机程序是一组指令,指示CPU执行某项任务。编译器和调试器是两种...

  • 发布于 2021-07-02 00:51
  • 阅读 ( 230 )
H070463527
H070463527

0 篇文章

相关推荐