原文:第24篇-虛擬機對象操作指令之getstatic

Java虛擬機規范中定義的對象操作相關的字節碼指令如下表所示。 xb getstatic 獲取指定類的靜態域,並將其值壓入棧頂 xb putstatic 為指定的類的靜態域賦值 xb getfield 獲取指定類的實例域,並將其值壓入棧頂 xb putfield 為指定的類的實例域賦值 xbb new 創建一個對象,並將其引用值壓入棧頂 xbc newarray 創建一個指定原始類型 如int, ...

2021-09-15 09:39 0 255 推薦指數:

查看詳情

第26-虛擬機對象操作指令之putstatic

之前已經介紹了getstatic與getfield指令的匯編代碼執行邏輯,這一介紹putstatic指令的執行邏輯,putfield將不再介紹,大家可以自己去研究,相信大家有這個實力。 putstatic指令為指定類的靜態域賦值。字節碼指令的格式如下: putstatic ...

Fri Sep 17 17:23:00 CST 2021 0 250
第25-虛擬機對象操作指令之getfield

getfield指令表示獲取指定類的實例域,並將其值壓入棧頂。其格式如下: getstatic indexbyte1 indexbyte2 無符號數indexbyte1和indexbyte2構建為(indexbyte1<<8)|indexbyte2,這個值指明了一個當前 ...

Fri Sep 17 00:55:00 CST 2021 0 208
第22-虛擬機字節碼之運算指令

虛擬機規范中與運算相關的字節碼指令如下表所示。 0x60 iadd 將棧頂兩int型數值相加並將結果壓入棧頂 0x61 ladd 將棧頂兩long型數值相加並將結果壓入 ...

Mon Sep 13 17:32:00 CST 2021 0 182
虛擬機字節碼指令

Java虛擬機指令由一個字節長度的、代表着某種特定操作含義的數字(稱為操作碼,Opcode)以及跟隨其后的零至多個代表此操作所需參數(稱為操作數,Operands)而構成。 基本數據類型 1、除了long和double類型外,每個變量都占局部變量區中的一個變量槽(slot),而long ...

Thu Mar 08 00:35:00 CST 2018 0 2090
第23-虛擬機字節碼指令之類型轉換

Java虛擬機規范中定義的類型轉換相關的字節碼指令如下表所示。 0x85 i2l 將棧頂int型數值強制轉換成long型數值並將結果壓入棧頂 0x86 i2f 將棧頂 ...

Tue Sep 14 18:08:00 CST 2021 0 159
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM