1. 程式人生 > >Java虛擬機一

Java虛擬機一

short hotspot 相對 使用 數字 部署 java虛擬機 32位 其余

Java發展至今,出現了很多Java虛擬機,從最初的Classic的Java虛擬機到Exact VM虛擬機,到現在最終被大規模部署和應用的是Hotspot虛擬機。
整數在Java虛擬機中的表示

在Java虛擬機中,整數有byte、short、int、long四種,分別表示8位、16位、32位、64位有符號整數。

整數在計算機中使用補碼表示,在Java虛擬機中也不例外。

原碼:就是符號位加上數字的二進制表示。以int為例,第一位表示的符號位,其余31位表示該數字的二進制值。

對於原碼來說,絕對值相同的正數和負數只有符號位不同。

反碼就是在原碼的基礎上,符號位不變,其余取反。

負數的補碼就是反碼加1,整數的補碼就是原碼本身。

相對於原碼,使用補碼作為計算機內的實際存儲方式至少有兩個好處:

1.可以統一數字0的表示。由於0既非正數,又非負數,使用原碼表示時符號位難以確定。但是使用補碼表示時,無論吧0歸入正數或者負數都會的到相同的結果。

2.使用補碼可以簡化整數的加減法計算,將減法計算視為加法計算,實現減法和加法的完全統一。

Java虛擬機一