Java 快速的進制轉換法【2轉8/16進制】

1、8421碼極其特點:

8421碼是中國大陸的叫法,8421碼是BCD代碼中最常用的一種,在這種編碼方式中每一位二值代碼的1都是代表一個固定數值,把每一位的1代表的十進制數加起來,得到的結果就是它所代表的十進制數碼。(也就是說因爲二進制每一位除了0就是1,如果出現的是1將每一位是1代表的固定值相加即可。)
在這裏插入圖片描述

2、通過8421碼的方式進行二進制和十進制的相互轉換:

例如:11001100 = 4 + 8 + 64 +128 = 204

3、二進制轉換爲八進制:將二進制每三位拆分爲一組進行計算,然後拼接到一起。

例如:60轉換爲八進制:

60對應的二進制爲:111100,拆分爲三位一組 111 100,111使用8421碼結果爲7,100使用8421碼結果爲4,所以60轉換爲八進制的結果爲74。

4、二進制轉換爲16進制:將二進制每四位拆分爲一組進行計算,然後拼接到一起。

例如:60轉換爲十六進制:

60所對應的二進制爲:111100,拆分爲四位一組(不足的可以在左側用0進行補位,不補也是可以的)11 1100,11用8421碼算出來的數爲3,1100用8421碼算出的結果爲12,在16進制中12用c表示,所以最終60所對應的十六進制的結果爲3c。

5、任意進制用快速轉換法轉換爲二進制:

例如:60用快速轉換法轉換爲二進制:

思路:因爲8421碼每位分別是:128 64 32 16 8 4 2 1

我們想要將60轉換爲2進制,60比128和64都小,所以前兩位爲0,即00

60大於32,60 - 32 = 28,第三位爲1,即001

28和16比大於16,28 - 16 = 12,第四位爲1,即0011

同理:12 - 8 = 4,第五位爲1,即00111

第六位:4 - 4 = 0,第六位爲1,即001111

後兩位用0補全:最終結果爲:00111100,也可以省略前面的0,用111100表示。

6、當然我們也可以使用:除基倒去餘的方法來進行十進制到二進制的轉換。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章