熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

JVM指令系統的組成及使用

2013-11-23 19:29:54  來源: Java核心技術 

  本文向大家簡單介紹一下JVM指令系統 的概念和用法JVM指令系統是以Java語言的實現為目的設計的其中包含了用於調用方法和監視多先程系統的指令

  JVM指令系統

  JVM指令系統同其他計算機的指令系統極其相似Java指令也是由操作碼和操作數兩部分組成操作碼為位二進制數操作數進緊隨在操作碼的後面其長度根據需要而不同操作碼用於指定一條指令操作的性質(在這裡采用匯編符號的形式進行說明)如iload表示從存儲器中裝入一個整數anewarray表示為一個新數組分配空間iand表示兩個整數的ret用於流程控制表示從對某一方法的調用中返回當長度大於位時操作數被分為兩個以上字節存放

  JVM指令系統

  JVM采用了big endian的編碼方式來處理這種情況即高位bits存放在低字節中這同 Motorola及其他的RISC CPU采用的編碼方式是一致的而與Intel采用的little endian的編碼方式即低位bits存放在低位字節的方法不同

  JVM指令系統是以Java語言的實現為目的設計的其中包含了用於調用方法和監視多先程系統的指令Java的位操作碼的長度使得JVM最多有種指令已使用了多種操作碼

  所有的CPU均包含用於保存系統狀態和處理器所需信息的寄存器組如果虛擬機定義較多的寄存器便可以從中得到更多的信息而不必對棧或內存進行訪問這有利於提高運行速度然而如果虛擬機中的寄存器比實際CPU的寄存器多在實現虛擬機時就會占用處理器大量的時間來用常規存儲器模擬寄存器這反而會降低虛擬機的效率針對這種情況JVM只設置了個最為常用的寄存器它們是

  ◆pc程序計數器

  ◆optop操作數棧頂指針

  ◆frame當前執行環境指針

  vars指向當前執行環境中第一個局部變量的指針所有寄存器均為pc用於記錄程序的執行optopframe和vars用於記錄指向Java棧區的指針


From:http://tw.wingwit.com/Article/program/Java/hx/201311/26968.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.