我多次听说Java实现了JIT(即时)编译,它的跨平台可移植的字节码得到了JVM的"解释".但是,我真的不知道字节码是什么,以及JVM在Java语言架构中的实际意义; 我想更多地了解他们.
字节码二进制可执行文件(如Java类文件,Parrot字节码文件或CLR文件)和机器代码可执行文件(如ELF,Mach-O和PE)之间有何区别.
这两者之间有什么明显的区别?
比如ELF结构中的.text区域等于类文件的哪个部分?
或者它们都有标题,但ELF和PE标题包含Architecture,但Class文件不包含
Java类文件

精灵档案

PE文件

字节代码是汇编代码和机器代码之间的代码的中间形式吗?字节码和目标代码一样吗?
这就是我的想法 - 高级语言 - >汇编语言 - >机器代码/目标代码(0s和1s.不同的CPU不同)
是这样的吗?高级语言 - >汇编语言 - >字节代码(将由虚拟机处理,将其转换为机器代码) - >机器代码
我已经读过这个 - 字节码与汇编语言代码,但需要更好地理解它