位元组码(英语:Bytecode)通常指的是已经经过编译,但与特定机器码无关,需要直译器转译后才能成为机器码中间代码。位元组码通常不像源码一样可以让人阅读,而是编码后的数值常量、引用、指令等构成的序列。[1]

位元组码主要为了实现特定软体运行和软体环境、与硬体环境无关。位元组码的实现方式是通过编译器虚拟机器。编译器将源码编译成位元组码,特定平台上的虚拟机器将位元组码转译为可以直接执行的指令。位元组码的典型应用为Java bytecode[2] [3]

参见

参考资料

  1. ^ Dynamic Machine Code Generation. Google Inc. [2023-02-21]. (原始内容存档于2017-03-05). 
  2. ^ The Implementation of Lua 5.0. [2024-07-13]. (原始内容存档于2020-07-30).  (NB. This involves a register-based virtual machine.)
  3. ^ Dalvik VM. [2012-10-29]. (原始内容存档于2013-05-18).  (NB. This VM is register based.)