亚洲 欧洲 日韩 综合色天使,久久国产Av无码一区二区老太,人妻醉酒被下药迷昏带到诊所 ,亚州老熟女A片AV色欲小说

程序計數(shù)器pc的功能,程序計數(shù)器pc的功能和特點(diǎn)?

程序計數(shù)器定義

程序計數(shù)器全稱為 Program Counter Register (寄存器)

作用

用于記錄下一條jvm指令的執(zhí)行地址,分支、循環(huán)、跳轉(zhuǎn)、異常、線程恢復(fù)等都依賴于計數(shù)器。

程序計數(shù)器pc的功能,程序計數(shù)器pc的功能和特點(diǎn)?

這是一段控制臺輸出的java代碼,編譯后各個階段的情況,主要看二進(jìn)制字節(jié)碼部分。
當(dāng)然這里的二進(jìn)制字節(jié)碼并不是大家所熟知的計算機(jī)的0和1,它并不能直接給到cpu執(zhí)行,它需要通過解釋器解釋成一條機(jī)器碼,機(jī)器碼就可以交給cpu執(zhí)行它了。 程序計數(shù)器的作用是記住下一條jvm指令的執(zhí)行地址,從上面圖中可以看出jvm指令前面都會有一個數(shù)字,可以把這個數(shù)字理解為一個指令對于的地址。

當(dāng)這些指令被加載到虛擬機(jī)后執(zhí)行順序:
1. 先得到 0:getstatic 指令
2. 交給解釋器
3. 解釋器解釋成機(jī)器碼
4. 機(jī)器碼交給cpu,cpu執(zhí)行

與此同時它會把下一條指令的地址 3地址 放入我們的程序計數(shù)器,等第一條指令完全執(zhí)行完后,解釋器就會到程序計數(shù)器中取到下一條指令的地址,去找下一條指令找到后重復(fù)剛才的流程。

注意:
當(dāng)解釋器去程序計數(shù)器中取這個 3地址 的時候會把下一條指令 4地址 放入程序計數(shù)器中。
在物理上實現(xiàn)程序計數(shù)器是在一個叫做寄存器來實現(xiàn)的,寄存器可以說是cpu中讀取速度最快的部分。

特點(diǎn)

線程私有

java程序支持多線程運(yùn)行,多線程運(yùn)行時cpu調(diào)度器組件會給線程分配一個時間片。
假如給線程一分配一個時間片,在時間片內(nèi)它的代碼沒有執(zhí)行完,它就會把線程一的狀態(tài)執(zhí)行一個暫存,切換到線程二中去,線程二執(zhí)行完后又會切換到線程一。切換回去的時候會去程序計數(shù)器中拿到之前最后執(zhí)行的代碼地址,程序計數(shù)器綁定自己線程。

不會存在內(nèi)存溢出。

在jvm規(guī)范中已經(jīng)規(guī)定了程序計數(shù)器部分不會內(nèi)存溢出

本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 sumchina520@foxmail.com 舉報,一經(jīng)查實,本站將立刻刪除。
如若轉(zhuǎn)載,請注明出處:http://www.qjsdgw.cn/138717.html