JVM指令助記符

2021-06-02 13:50:13 字數 1810 閱讀 2336

以下只是jvm指令助記符,關於jvm指令的詳細內容請閱讀《jvm指令詳解

變數到運算元棧:

iload,iload_,lload,lload_,fload,fload_,dload,dload_,aload,aload_

運算元棧到變數:

istore,istore_,lstore,lstore_,fstore,fstore_,dstore,dstore_,astore,astore_

常數到運算元棧:

bipush,sipush,ldc,ldc_w,ldc2_w,aconst_null,iconst_ml,iconst_,lconst_,fconst_,dconst_ 加:

iadd,ladd,fadd,dadd 減:

isub,lsub,fsub,dsub 乘:

imul,lmul,fmul,dmul 除:

idiv,ldiv,fdiv,ddiv

餘數:irem,lrem,frem,drem

取負:ineg,lneg,fneg,dneg

移位:ishl,lshr,iushr,lshl,lshr,lushr

按位或:

ior,lor

按位與:

iand,land

按位異或:

ixor,lxor

型別轉換:

i2l,i2f,i2d,l2f,l2d,f2d(放寬數值轉換)

i2b,i2c,i2s,l2i,f2i,f2l,d2i,d2l,d2f(縮窄數值轉換)

建立類實便:

new建立新陣列:

newarray,anewarray,multianwarray

訪問類的域和類例項域:

getfield,putfield,getstatic,putstatic

把資料裝載到運算元棧:

baload,caload,saload,iaload,laload,faload,daload,aaload

從運算元棧存儲存到陣列:

bastore,castore,sastore,iastore,lastore,fastore,dastore,aastore

獲取陣列長度:

arraylength

檢相類例項或陣列屬性:

instanceof,checkcast

運算元棧管理:

pop,pop2,dup,dup2,dup_xl,dup2_xl,dup_x2,dup2_x2,swap

有條件轉移:

ifeq,iflt,ifle,ifne,ifgt,ifge,ifnull,ifnonnull,if_icmpeq,if_icmpene,

if_icmplt,if_icmpgt,if_icmple,if_icmpge,if_acmpeq,if_acmpne,lcmp,fcmpl

fcmpg,dcmpl,dcmpg

復合條件轉移:

tableswitch,lookupswitch

無條件轉移:

goto,goto_w,jsr,jsr_w,ret

排程物件的實便方法:

invokevirtual

呼叫由介面實現的方法:

invokeinte***ce

呼叫需要特殊處理的例項方法:

invokespecial

呼叫命名類中的靜態方法:

invokestatic

方法返回:

ireturn,lreturn,freturn,dreturn,areturn,return

異常:athrow

finally關鍵字的實現使用:

jsr,jsr_w,ret

JVM 指令助記符

iconst m1 iconst 0 iconst 1 iconst 2 iconst 3 iconst 4 iconst 5 lconst 0 lconst 1 fconst 0 fconst 1 dconst 0 dconst 1 bipush sipush ldc ldc w ldc2 w l...

JVM指令助記符

以下只是jvm指令助記符,關於jvm指令的詳細內容請閱讀 jvm指令詳解 變數到運算元棧 iload,iload lload,lload fload,fload dload,dload aload,aload 運算元棧到變數 istore,istore lstore,lstore fstore,fs...

JVM指令助記符

以下只是jvm指令助記符,關於jvm指令的詳細內容請閱讀 jvm指令詳解 變數到運算元棧 iload,iload lload,lload fload,fload dload,dload aload,aload 運算元棧到變數 istore,istore lstore,lstore fstore,fs...