📜  源代码和字节码的区别

📅  最后修改于: 2021-09-14 01:24:32             🧑  作者: Mango

源代码是指由人类/程序员生成的高级代码或汇编代码。源代码易于阅读和修改。它由程序员使用任何人类可读的高级语言或中级语言编写。源代码包含程序员为了更好地理解而添加的注释。

源代码提供给语言翻译器,翻译器将其转换为机器可理解的代码,称为机器代码或目标代码。计算机无法理解直接的源代码,计算机理解机器代码并执行它。它被认为是计算机的基本组成部分。简单地说,我们可以说源代码是由程序员使用 C、C++、 Java、 Python、汇编语言等计算机编程语言编写的一组指令/命令和语句。因此,在任何编程中编写的语句语言被称为源代码。

Java 中源代码和字节代码之间的差异

字节码是源代码和机器码之间的中间代码。它是一种低级代码,是用高级语言编写的源代码编译的结果。它由像Java虚拟机 (JVM) 这样的虚拟机处理。

字节码在被解释器翻译成机器码之后是不可运行的代码,然后它才能被机器理解。它被编译为在 JVM 上运行,任何包含 JVM 的系统都可以运行它,而不管它们的操作系统如何。这就是Java独立于平台的原因。字节码被称为可移植码。

下图说明了源代码和字节码的排列——

源代码和字节码的区别

源代码和字节码的区别:

S.NO.

Source Code

Byte Code

01. Source code is written by a human or programmer. Byte code is not written by humans or programmers.
02. It is written by using some high-level programming language. Byte code is an intermediate code between the source code and machine code.
03. It is the input to the compiler and it is translated by the compiler or other language translator. It is the input to the interpreter
04. The source code is not directly understandable by the system/machine. Byte code is executable by a virtual machine.
05. The source code may contain comments. Byte code does not contain comments.
06. Source code is in the form of plain text similar to the English language. Byte code is in the form of numeric codes and constants.
07. Source code is more understandable by humans. Byte code is less understandable by humans.
08. Its speed is minimum than the byte code. Its speed is maximum than the source code.
09. The performance of source code is less than byte code.  The performance of the byte code is more than the source code.
10. It is a high-level code. It is an intermediate-level code.