Java基礎-進制轉換spa
做者:尹正傑3d
版權聲明:原創做品,謝絕轉載!不然將追究法律責任。blog
一.Java 程序中經常使用的進制內存
1>.十進制,由「0123456789」 這10個數字組成,逢十進一;基礎
2>.二進制,由「01」 這2個數字組成,逢二進一,以「0b」開頭;二進制
3>.八進制,由「01234567」 這8個數字組成,逢八進一,以數字「0」開頭;程序
4>.十六進制,由「0123456789abcdef」 這16個數字組成,逢十六進一,以「0x」開頭;im
注意,在CPU,內存,硬盤中的數據都是「0」和「1」,可是在程序中,咱們是能夠用上面任意的進制喲。數據
二.八進制和十六進制的由來img
全部的數據都是以二進制的形式存儲的在硬盤的。當咱們想要對硬盤數據進行修改的話就必須想把數據讀取到內存中,而後在利用OS上的程序去編輯這些數據,在編輯的過程當中,若是都以二進制去表示一個數字的話是沒有問題的,可是當你表示的數據足夠大的話,用二進制看起來的就特別的長,因而就有了將三個比特位組成一組的八進制,到最後人民絕對八進制表示的長度依然很長,因而人們又創造出來了十六進制。他們都有一個共同的特色,就是必須將分組後的數據先轉換成十進制數字,而後在轉換成相應的八進制和十六進制,其中八進制要以數字"0"開頭,二進制則以「0b」開頭,而十六進制則以「0x」開頭。
三.進制互相轉換
1>.十進制轉二進制
對2取餘,倒序輸出。
2>.十進制轉八進制
對8 取全,倒序輸出
3>.十進制轉十六進制
對16取餘,倒序輸出
4>.三個二進制位,能夠轉換爲一個八進制位
咱們知道 1234 = 0b10 011 010 010
將其轉換爲八進制則爲:0b10 011 010 010 = 02322
5>.四個二進制位能夠轉換爲一個十六進制位
如:0b0100 1101 0010 = 0x4d2
6>.十六進制轉換成十進制
如:十六進制7B轉換成十進制是:123
首先計算第0位:B * 16^0 = 11(注意,在十六進制中,A到F分別對應的是十進制的10~15)。
再計算第一位:7 * 16^1 = 112
接下來要作的事情就是將第0位和第1位相加便可,所以十六進制7B轉換成十進制是123。