C語言基礎中,進制之間的轉換
作者:王可利(Star·星星)
整型的表現形式有如下幾種方式:
十進制: 都是以0-9這九個數字組成,不能以0開頭。
二進制: 由0和1兩個數字組成。
八進制: 由0-7數字組成,為了區分與其他進制的數字區別,開頭都是以0開始。
十六進制:由0-9和A-F組成。為了區分於其他數字的區別,開頭都是以ox開始。
1.十進制轉二進制
方法:十進制的數除以2,然后取余數,直到最后的商為0為止。。然后余數從下到上取(這個就是二進制的數)

2.二進制轉十進制
方法:把二進制數按權展開、相加就是十進制數。

分析:二進制4位數字,從個位開始數:0.1.2.3 就分別是
個位的數乘以2的0次方+十位的數乘以2的1次方+百位的數乘以2的2次方+千位的數乘以2的3次方=十進制的數
3.十進制轉八進制(類似十進制轉二進制的方法)
方法:十進制的數一直除以8,直到商為0,然后倒着取余八進制的數

4.八進制轉十進制(類似二進制轉十進制的方法)
方法:把八進制的數按權展開,相加就是十進制數。

5.二進制轉八進制
方法1:二進制 -> 十進制 -> 八進制
方法2:2的3次方是8,所以,二進制可以從個位開始,切成3個3個為一組,最高位不夠3個就補0。。
然后每一組數就代表八進制的一個位數。。

二進制轉十六進制也是一樣的方法
5.八進制轉二進制
方法1:八進制 -> 十進制 -> 二進制
方法2:八進制每一位數進行除2取余,如果取出來的余數不夠3個就在最高位補0。(為什么是不足3個在最高位補0?因為2的3次方是8)。

十六進制轉二進制也是一樣的方法
