C語言基礎中,進制之間的轉換


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)。

 

 

 

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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM