首页 > 解决方案 > “二进制码”和“字节码”有什么区别?

问题描述

我最近研究了“字节码”更接近机器语言,但它是一种不是机器语言的代码。为什么我们需要在转换编程语言之间采取中间步骤,然后是我不明白的二进制代码,它是 10101 吗?

标签: pythonbytecodeinterpreter

解决方案


字节码被认为是源代码和机器代码之间的中间级代码。它是一种低级代码,是用高级语言编写的源代码(编程语言)编译的结果。它针对的是虚拟机,而不是特定的计算机体系结构。字节码允许单个编译的二进制文件在各种平台上以几乎原生的效率运行和执行。

机器码(二进制代码)是二进制(0 和 1)格式,与字节码和源代码完全不同。它被认为是源代码的最底层表示。机器码是经过编译或解释后得到的。它也被称为机器语言。机器代码是机器语言中的一组指令。

虚拟机将字节码转换为机器码。此外,机器码与字节码的主要区别在于处理器或CPU可以直接执行机器码。另一方面,在编译源代码后,字节码被创建。虚拟机可以执行它。


推荐阅读