1.凡是帶const的表示將什麼資料壓運算元棧。
如:iconst_2 將int型資料2壓入到運算元棧
aconst_null 將null值壓入棧。
2.bipush和sipush 表示將單位元組或者短整形的常量值壓入運算元棧。
3.帶ldc的表示將什麼型別資料從常量池中壓入到運算元棧。
如:ldc_w 將int或者flat或者string型別的資料壓入到運算元棧。(寬索引)
ldc2_w 將long或者double型別的資料壓入到運算元棧。(寬索引)
4.凡是帶load的指令表示將某型別的區域性變數資料壓入到運算元棧的棧頂。
如:iload 表示將int型別的區域性變數壓入到運算元棧的棧頂。
aload 以a開頭的表示將引用型別的區域性變數壓入到運算元棧的棧頂。
iload_1 將區域性變數陣列裡面下標為1的int型別的資料壓入到運算元棧。
iaload 將int型陣列的指定索引的值壓入到運算元棧。
5.凡是帶有store指令的表示將運算元棧頂的某型別的值存入指定的區域性變數中。
如:istore 表示將棧頂int型別的資料存入到指定的區域性變數中。
istore_3 表示將棧int型別的資料存入到區域性變數陣列的下標為3的元素中。
6.pop 將棧頂資料彈出。pop2將棧頂的乙個long或者double資料從棧頂彈出來。
7.dup 複製棧頂的資料並將複製的值也壓入到棧頂。
dup2 複製棧頂乙個long或者是double的資料並將複製的值也壓入到棧頂。
8.swap 將棧最頂端的兩個值互換。
9.iadd 將棧頂兩個int型的資料相加然後將結果再次的壓入到棧頂。
isub 將棧頂兩個int型的資料相減然後將結果再次的壓入到棧頂。
imul 將棧頂兩個int型的資料相乘然後將結果再次的壓入到棧頂。
idiv 將棧頂兩個int型的資料相除然後將結果再次的壓入到棧頂。
irem 將棧頂兩個int型的資料取模運算然後將結果再次的壓入到棧頂。.
ineg 將棧頂的int資料取負將結果壓入到棧頂。
iinc 將指定的int變數增加指定值(i++,i--,i+=2)
i2l 將棧頂int型別資料強制轉換成long型將結果壓入到棧頂。
lcmp 將棧頂兩long型資料的大小進行比較,並將結果(1,0,-1)壓入棧頂。
10.以if開頭的指令都是跳轉指令。
11.tableswitch、lookupswitch 表示用switch條件跳轉。
12.ireturn 從當前方法返回int型資料。
13. getstatic 獲取指定類的靜態域,將將結果壓入到棧頂。
putstatic 為指定的類的靜態域賦值。
getfield 獲取指定類的例項變數,將結果壓入到棧頂。
putfield 為指定類的例項變數賦值。
invokevirtual 呼叫例項方法。
invokespacial 呼叫超類構造方法,例項初始化方法,私有方法。
invokestatic 呼叫靜態方法。
invokeinte***ce 呼叫介面方法。
new 建立乙個物件,並將其引用壓入到棧頂。
newarray 建立乙個原始型別的陣列,並將其引用壓入到棧頂。
arraylength 獲得乙個陣列的長度,將將結果壓入到棧頂。
athrow 將棧頂的異常丟擲。
checkcast 檢驗型別轉換,轉換未通過,將丟擲classcastexception.
instanceof檢驗物件是否是指定的類的例項,如果是將1
壓入棧頂,否則將0
壓入棧頂
monitorenter 獲得物件的鎖,用於同步方法或同步塊
monitorexit 釋放物件的鎖,用於同步方法或同步塊
ifnull 為null時跳轉
ifnonnull 不為null時跳轉
JVM指令集理解
1.凡是帶const的表示將什麼資料壓運算元棧。如 iconst 2 將int型資料2壓入到運算元棧 aconst null 將null值壓入棧。2.bipush和sipush 表示將單位元組或者短整形的常量值壓入運算元棧。3.帶ldc的表示將什麼型別資料從常量池中壓入到運算元棧。如 ldc w 將...
mysql bin指令集 mysql指令集
一 連線mysql。1 連線到本機上的mysql。首先開啟dos視窗,然後進入目錄mysql bin,再鍵入命令mysql u root p,回車後提示你輸密碼.注意使用者名稱前可以有空格也可以沒有空格,但是密碼前必須沒有空格,否則讓你重新輸入密碼.如果剛安裝好mysql,超級使用者root是沒有密...
gbip指令集 GB CPU 指令與指令集
gb cpu 指令與指令集 到目前為止,雖然 cpu 已經擁有了算術邏輯單元 alu 進行算術邏輯運算和使用暫存器儲存資料,但它仍然缺少一些正常工作時需要的資訊.就像建築工人無法僅僅依靠材料和工具憑空造出一棟高樓大廈,除非建築師能為其提供詳細的建築圖紙.cpu 也是一樣的,開發者需要通過某種方式告訴...