Java 虚拟机的指令由一个字节长度的、代表着某种特定操作含义的数字(称为操作码,Opcode)以及跟随其后的零至多个代表此操作所需参数(称为操作数,Operands)而构成。
由于限制了Java 虚拟机操作码的长度为一个字节(即0~255),这意味着指令集的操作码总数不可能超过256 条。
大多数的指令都包含了其操作所对应的数据类型信息。例如:
iload 指令用于从局部变量表中加载int 型的数据到操作数栈中,而fload 指令加载的则是float类型的数据。
大部分的指令都没有支持整数类型byte、char 和short,甚至没有任何指令支持boolean 类型。大多数对于boolean、byte、short 和char 类型数据的操作,实际上都是使用相应的int类型作为运算类型阅读字节码作为了解Java 虚拟机的基础技能,请熟练掌握。请熟悉并掌握常见指令即可。