简谈字节码

Java 和 Python 中的字节码,或者 PHP 中的 OpCode 到底是什么?

Java 最突出的跨平台优势使得它不能被编译成本地代码,而要以中间代码的形式运行在虚拟机环境中。

这使得 Java 的反编译要比别的高级语言容易实现,并且反编译的代码经过优化后几乎可以与源代码相媲美。

字节码( Byte-code )是一种包含执行程序,由一序列 op 代码/数据对组成的二进制文件。

字节码是一种中间码,它比机器码更抽象。它经常被看作是包含一个执行程序的二进制文件,更像一个对象模型。

字节码被这样叫是因为通常每个 opcode( 操作码 ) 是一字节长,但是指令码的长度是变化的。

每个指令有从 0 到 255(或十六进制的: 00 到 FF )的一字节操作码,被参数例如寄存器或内存地址跟随。

本文最后修改时间: 2015年09月28日 21:13:42 (完) CC BY-NC-ND 3.0

若您发现文章中的错误,并愿告知于我,或想与我交流,我的联系方式在: Contacts


上一篇 Windows 个人经验

All The Best

下一篇 iPhone/iOS 杂谈