Opcode
操作码(hex)
Opcode name
操作码名称
Explanation
说明
Example
示例
00
nop
无操作
0000 - nop
01
move vx, vy
移动vy的内容到vx。两个寄存器都必须在最初的256寄存器范围以内。
0110 - move v0, v1
移动v1寄存器中的内容到v0。
02
move/from16 vx, vy
移动vy的内容到vx。vy可能在64K寄存器范围以内,而vx则是在最初的256寄存器范围以内。
0200 1900 - move/from16 v0, v25
移动v25寄存器中的内容到v0。
03
move/16
未知注4
04
move-wide
未知注4
05
move-wide/from16 vx, vy
移动一个long/double值,从vy到vx。vy可能在64K寄存器范围以内,而vx则是在最初的256寄存器范围以内。
0516 0000 - move-wide/from16 v22, v0
移动v0,v1寄存器中的内容到 v22,v23。
06
move-wide/16
未知注4
07
move-object vx, vy
移动对象引用,从vy到vx。
0781 - move-object v1, v8
移动v8寄存器中的对象引用到v1。
08
move-object/from16 vx, vy
移动对象引用,从vy到vx。vy可以处理64K寄存器地址,vx可以处理256寄存器地址。
0801 1500 - move-object/from16 v1, v21
移动v21寄存器中的对象引用到v1。
09
move-object/16
未知注4
0A
move-result vx
移动上一次方法调用的返回值到vx。
0A00 - move-result v0
移动上一次方法调用的返回值到v0。
0B
move-result-wide vx
移动上一次方法调用的long/double型返回值到vx,vx+1。
0B02 - move-result-wide v2
移动上一次方法调用的long/double型返回值到v2,v3。
0C
move-result-object vx
移动上一次方法调用的对象引用返回值到vx。
0C00 - move-result-object v0
移动上一次方法调用的对象引用返回值到v0。
0D
move-exception vx
当方法调用抛出异常时移动异常对象引用到vx。
0D19 - move-exception v25
当方法调用抛出异常时移动异常对象引用到v25。
0E
return-void
返回空值。
0E00 - return-void
返回值为void,即无返回值,并非返回null。