程序計數器


先來看這張圖,對於數據區,存在着線程,進程的概念。程序計數器是每個線程私有的。如果沒有多線程的概念,可以直接無視。

程序計數器

程序計數器,也有人叫它 程序寄存器。但是叫做 程序計數器更為精確。

因為我們知道,在計算機也有一種結構叫做 寄存器,它儲存容量小,但是速度快,一般用於 CPU 中。

但是我們這里的 程序計數器 只是我們常說的內存中划分出的一塊小內存區域,用來充當 程序計數器的功能。

它記錄了,我們下一條要運行指令的地址。

我們來看這張圖。

右邊是我們從 Java 文件編譯出的 class 文件的代碼內容,左邊是指令偏移地址,右邊是要執行的指令。

我們的 程序計數器就保存了 下一條指令要執行地址的位置。

之后,執行引擎會從 程序計數器中,獲得指令的地址,拿到操作指令,對其進行執行。

程序計數器 是 當前線程所執行的字節碼的行號指示器。

因為只是記錄下一條要運行指令的地址,所以占用內存小,而且操作簡單,相應的速度也就相對較快。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM