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)。
十六進制轉二進制也是一樣的方法