在阅读了有关该主题的一些资料之后,我仍然不确定编译语言和解释语言之间的区别。有人告诉我这是Java和JavaScript之间的区别之一。有人能帮我理解吗?
编译语言和解释语言之间有什么区别?
区别 不 在于语言。它在 执行中 。
从我的系统中得到了答案,这是一个答案:
在编译的实现中,原始程序被转换为本地机器指令,这些指令直接由硬件执行。
在解释的实现中,原始程序被翻译成其他东西。另一个程序称为“解释器”,然后检查“其他”并执行需要的任何操作。根据语言及其实现,“其他”的形式多种多样。从较流行到较不流行,“其他”可能是
虚拟机的二进制指令,通常称为 字节码 ,在Lua,Python,Ruby,Smalltalk和许多其他系统中也是如此(该方法在1970年代由UCSD P-system和UCSD Pascal普及了)
原始程序的树状表示形式,例如抽象语法树,许多原型或教育性解释程序都采用这种形式
源程序的标记化表示,类似于Tcl
源程序的字符,就像在MINT和TRAC中所做的一样
使问题复杂化的一件事 是可以将字节码转换(编译)为本机指令
。因此,成功的解释实现可能最终会获得编译器。如果编译器在后台动态运行,则通常称为即时编译器或JIT编译器。JIT已针对Java,JavaScript,Lua开发,我敢说许多其他语言。到那时,您可以使用混合实现,在该实现中解释一些代码并编译一些代码。
主要内容:编译型语言,解释型语言,总结通过高级语言编写的源码,我们能够轻松理解,但对于计算机来说,它只认识二进制指令,源码就是天书,根本无法识别。源码要想执行,必须先转换成二进制指令。 所谓二进制指令,也就是由 0 和 1 组成的机器码,能被计算机直接识别并执行。 然而,究竟在什么时候将源代码转换成二进制指令呢?不同的编程语言有不同的规定: 有的编程语言要求必须提前将所有源代码一次性转换成二进制指令,也就是生成一个可执行程序(比如 W
关于命令式语言和函数式(声明式语言的一个子集)编程语言之间的差异,有什么明确的答案,可以用实际例子来解释吗?有哪些主要的或最重要的命令式语言?函数语言呢? 我确实在这里读到了这个答案,但它实际上让我更加困惑-(函数式编程语言和命令式编程语言之间有什么区别?
翻译的结果是什么?它会把高级语言变成汇编语言还是机器语言,即二进制代码? 如果是后者,这是否意味着解释语言与介绍集没有关系? 一种语言只能有一个口译员?是因为解释器不做任何优化,所以我们不需要找到更好的解释器吗?
问题内容: 过去,我使用C 作为编程语言。我知道用C 编写的代码会经过编译过程,直到成为目标代码“机器代码”为止。 我想知道Java在这方面如何工作。用户编写的Java代码如何由计算机运行? 问题答案: Java实现通常使用两步编译过程。Java编译器将Java源代码编译为字节码。字节码由Java虚拟机(JVM)执行。现代JVM使用称为即时(JIT)编译的技术将字节码编译为硬件CPU在运行时即时理
问题内容: 我正在尝试更好地理解它们之间的区别。我在网上找到了很多解释,但是它们倾向于抽象的差异,而不是实际的含义。 我的大部分编程经验都来自CPython(动态的,解释的)和Java(静态的,编译的)。但是,我知道还有其他种类的解释和编译语言。除了可以从以编译语言编写的程序中分发可执行文件这一事实之外,每种类型是否有优点/缺点?通常,我听到人们争辩说解释语言可以交互使用,但是我相信编译语言也可以
本文向大家介绍高级语言和低级语言之间的区别,包括了高级语言和低级语言之间的区别的使用技巧和注意事项,需要的朋友参考一下 让我们首先了解高级和低级语言- 高级语言 与低级语言相比,它易于解释和编译。 它可以被认为是程序员友好的语言。 很容易理解。 这很容易调试。 在维护方面很简单。 它要求将编译器/解释器翻译成机器代码。 它可以在不同的平台上运行。 它可以从一个位置移植到另一位置。 i.e与低级语言