您好,登錄后才能下訂單哦!
本篇內容介紹了“java之JVM指令系統是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
1、指令系統說明
JVM指令系統與其它計算機指令系統極為相似。同時,Java指令還包括操作碼和操作數兩部分。操作碼是一個8位的二進制數字,操作碼后面有一個操作數,其長度視需要而定。運算代碼用來指定指令操作的性質(這里我們以匯編符號的形式來說明),例如iload表示從存儲器中裝入一個整數,anewarray表示為新的數組分配空間,iand表示兩個整數的"與",ret表示過程控制,從對某個方法的調用中返回。超過8位長度時,操作數被劃分為多個字節存儲。對于這種情況,JVM采用了“bigendian”的編碼方法,即高bits位于低字節中。這種情況與Motorola和RISCCPU所采用的編碼方式相同,而與Intel所采用的"littleendian"編碼方式不同,即低位bits存儲低位字節。
java指令系統是為實現Java語言而設計的,它包含了調用方法的指令,以及監控多優先級系統。JVM中8位操作碼的長度使得JVM最多有256條指令,而現在已經有超過160條指令被使用。
2、常用寄存器
全部CPU都包含一個寄存器組,用來保存系統狀態和處理器要求的信息。當虛擬機定義了更多的寄存器時,在不訪問棧或內存的情況下就能從中獲得更多的信息,這有助于提高運行速度。但是,如果虛擬機中寄存器的數量超過實際CPU的數量,那么在實現虛擬機時將花費大量的處理器時間用常規存儲器模擬寄存器,而這反而會降低虛擬機的效率。對于這一點,JVM只設置了4個最常用的寄存器。他們是:
(1)pc程序計數器
(2)optop操作數棧頂指針
(3)frame當前執行環境指針
(4)vars指向當前執行環境中第一個局部變量的指針
所有寄存器均為32位。pc用于記錄程序的執行。optop,frame和vars用于記錄指向Java棧區的指針。
Java的基本數據類型分為:
1、整數類型,用來表示整數的數據類型。
2、浮點類型,用來表示小數的數據類型。
3、字符類型,字符類型的關鍵字是“char”。
4、布爾類型,是表示邏輯值的基本數據類型。
“java之JVM指令系統是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。