更新時間:2022-01-25 來源:黑馬程序員 瀏覽量:
整型常量可以分別用二進制、八進制、十進制和十六進制表示,不同的進制并不影響數據本身的大小,同一個整型常量可以在不同進制之間轉換,具體轉換方式如下。
十進制轉換成二進制就是一個除以2取余數的過程。把要轉換的數,除以2,得到商和余數,將商繼續除以2,直到商為0。最后將所有余數倒序排列,得到數就是轉換結果。以十進制的6轉換為二進制為例進行說明,如圖2-13所示。
三次除以2計算得到余數依次是0、1、1,將所有余數倒序排列是110。所以十進制的6轉換成二進制,結果110。
二進制轉換成十進制要從右到左用二進制位上的每個數去乘以2的相應次方,例如,將最右邊第一位的數乘以2的0次方,第二位的數乘以2的1次方,第n位的數乘以2的n一1次方,然后把所有乘得的結果相加,得到的結果就是轉換后的十進制。
以二進制教01100100轉換為十進制為例進行說明,轉換方式如下:
0·2*0+20+1+2'+0*22+0*23+0*24+1*25+1*24+0*27*100
由于0乘以多少都是0,所以上述表達式也可以簡寫為:
142+3*2+1*26=100
得到的結果100就是二進制數01100100轉換后的十進制表現形式。
編程中之所以要用八進制和十六進制,是因為它們與二進制之間的互相轉換很方使,而且它們比一串長的二進制數方便書寫和記憶。接下來,就為大家詳細介紹如何將二進制料換為八進制和十六進制。
二進制轉八進制時,首先需要將二進制數自右向左每三位分成一段(不足三位的,在左倒補0),然后將二進制數每段的三位數轉為八進制的一位,轉換過程中數值的對應關系如表2-4所示。
表2-4二進制和八進制數值對應表
了解了二進制轉八進制的規別,接下來詳細講解如何將一個二進制數00101010轉為八進制,具體步驟如下:
①每三位分成一段,結果為:000 101 010。
②將每段的數值分別查表替換,結果如下:
000→0
101→5
010→2
③將替換的結果進行組合,轉換的結果為052(注意八進制必須以0開頭)。
二進制轉換十六進制,與轉八進制類似,不同的是要將二進制數每四位分成一段(不足四位的,在左側樸0),然后通過查表將二進制數每段的四位數特換為八進制的每一位即可。二進制轉十六進制過程中數值的對應關系如表2-5所示。
了解了二進制轉十六進制的規則,接下來通過一個例于來學習。假設要將一個二進制數10100101轉為十六進制,具體步驟如下;
①每四位分成一段,結果為:1010 0101。
②將每段的數值分別查表替換,結果如下:
1010-→A
0101→5
③將替換的結果進行組合,轉換的結果為OxA5或0XA5(注意十六進制必須以Ox或者OX開頭)。