教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢(xún)/投訴熱線(xiàn):400-618-4000

整型常量不同進(jìn)制間的相互轉換

更新時(shí)間:2022年01月25日17時(shí)24分 來(lái)源:傳智教育 瀏覽次數:

整型常量可以分別用二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制表示,不同的進(jìn)制并不影響數據本身的大小,同一個(gè)整型常量可以在不同進(jìn)制之間轉換,具體轉換方式如下。

1.十進(jìn)制和二進(jìn)制之間的轉換

(1)十進(jìn)制轉二進(jìn)制。

十進(jìn)制轉換成二進(jìn)制就是一個(gè)除以2取余數的過(guò)程。把要轉換的數,除以2,得到商和余數,將商繼續除以2,直到商為0。最后將所有余數倒序排列,得到數就是轉換結果。以十進(jìn)制的6轉換為二進(jìn)制為例進(jìn)行說(shuō)明,如圖2-13所示。

三次除以2計算得到余數依次是0、1、1,將所有余數倒序排列是110。所以十進(jìn)制的6轉換成二進(jìn)制,結果110。

(2)二進(jìn)制轉十進(jìn)制。

二進(jìn)制轉換成十進(jìn)制要從右到左用二進(jìn)制位上的每個(gè)數去乘以2的相應次方,例如,將最右邊第一位的數乘以2的0次方,第二位的數乘以2的1次方,第n位的數乘以2的n一1次方,然后把所有乘得的結果相加,得到的結果就是轉換后的十進(jìn)制。

以二進(jìn)制教01100100轉換為十進(jìn)制為例進(jìn)行說(shuō)明,轉換方式如下:

0·2*0+20+1+2'+0*22+0*23+0*24+1*25+1*24+0*27*100

由于0乘以多少都是0,所以上述表達式也可以簡(jiǎn)寫(xiě)為:

142+3*2+1*26=100

得到的結果100就是二進(jìn)制數01100100轉換后的十進(jìn)制表現形式。

2.二進(jìn)制和八進(jìn)制、十六進(jìn)制之間的轉換

編程中之所以要用八進(jìn)制和十六進(jìn)制,是因為它們與二進(jìn)制之間的互相轉換很方使,而且它們比一串長(cháng)的二進(jìn)制數方便書(shū)寫(xiě)和記憶。接下來(lái),就為大家詳細介紹如何將二進(jìn)制料換為八進(jìn)制和十六進(jìn)制。

(1)二進(jìn)制轉八進(jìn)制。

二進(jìn)制轉八進(jìn)制時(shí),首先需要將二進(jìn)制數自右向左每三位分成一段(不足三位的,在左倒補0),然后將二進(jìn)制數每段的三位數轉為八進(jìn)制的一位,轉換過(guò)程中數值的對應關(guān)系如表2-4所示。

表2-4二進(jìn)制和八進(jìn)制數值對應表

了解了二進(jìn)制轉八進(jìn)制的規別,接下來(lái)詳細講解如何將一個(gè)二進(jìn)制數00101010轉為八進(jìn)制,具體步驟如下:

①每三位分成一段,結果為:000 101 010。

②將每段的數值分別查表替換,結果如下:

000→0

101→5

010→2

③將替換的結果進(jìn)行組合,轉換的結果為052(注意八進(jìn)制必須以0開(kāi)頭)。

(2)二進(jìn)制轉十六進(jìn)制。

二進(jìn)制轉換十六進(jìn)制,與轉八進(jìn)制類(lèi)似,不同的是要將二進(jìn)制數每四位分成一段(不足四位的,在左側樸0),然后通過(guò)查表將二進(jìn)制數每段的四位數特換為八進(jìn)制的每一位即可。二進(jìn)制轉十六進(jìn)制過(guò)程中數值的對應關(guān)系如表2-5所示。

了解了二進(jìn)制轉十六進(jìn)制的規則,接下來(lái)通過(guò)一個(gè)例于來(lái)學(xué)習。假設要將一個(gè)二進(jìn)制數10100101轉為十六進(jìn)制,具體步驟如下;

①每四位分成一段,結果為:1010 0101。

②將每段的數值分別查表替換,結果如下:

1010-→A

0101→5


③將替換的結果進(jìn)行組合,轉換的結果為OxA5或0XA5(注意十六進(jìn)制必須以Ox或者OX開(kāi)頭)。



猜你喜歡:

什么是整型?Python整型詳細介紹

MySQL類(lèi)型之字符串和二進(jìn)制類(lèi)型詳細介紹

RDD是如何操作數據轉換的?RDD轉換算子API示例

常用的數據庫管理命令

傳智教育Java高級軟件工程師培訓

0 分享到:
和我們在線(xiàn)交談!