#快速掌握進(jìn)制
###何為進(jìn)制
進(jìn)制也就是進(jìn)位制,是人們規(guī)定的一種進(jìn)位方法。對(duì)于任何一種進(jìn)制————X進(jìn)制,就表示某一位置上的數(shù)運(yùn)算時(shí)是逢X進(jìn)一位。十進(jìn)制就是逢十進(jìn)一,十六進(jìn)制就是逢十六進(jìn)一,二進(jìn)制就是逢二進(jìn)一,以此類(lèi)推,X進(jìn)制就是逢x進(jìn)位。
##常見(jiàn)的進(jìn)制
+二進(jìn)制
0 、1、 10、 11、 100、 101、 110、 111、 1000 ....
+十進(jìn)制
0 、1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 11、 12、 13 ....
+八進(jìn)制
0、1、2、3、4、5、6、7、10、11、12、13、14、15、16、17、20、21 ...
+十六進(jìn)制
0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、10、11、12、13、14、15、16、17、18、19、1A、1B、1C、1D .....
#二進(jìn)制
二進(jìn)制由0,1兩個(gè)基本數(shù)字組成。二進(jìn)制的規(guī)則是“逢二進(jìn)一,借一當(dāng)二”
#八進(jìn)制
八進(jìn)制由數(shù)碼0,1,2,3,4,5,6,7,八個(gè)數(shù)字組成,每個(gè)數(shù)碼對(duì)應(yīng)三位二進(jìn)制,八進(jìn)制按照“逢八進(jìn)一”的原則。基R=8=2^3
#十進(jìn)制
十進(jìn)制由0,1,2,3,4,5,6,7,8,9十個(gè)數(shù)字組成,十進(jìn)制按照“逢十進(jìn)一”的原則
#十六進(jìn)制
十六進(jìn)制由16個(gè)字符組成,從0~9以及A,B,C,D,E,F。十六進(jìn)制是“逢十六進(jìn)一”即基R=16=2^4
### 2 的次方數(shù)
*2^0 = 1;
*2^1 = 2
*2^2 = 4
*2^3 = 8
*2^4 = 16
*2^5 = 32
*2^6 = 64
*2^7 = 128
*2^8 = 256
*2^9 = 512
*2^10 = 1024
#進(jìn)制轉(zhuǎn)換
###其他進(jìn)制轉(zhuǎn)十進(jìn)制
二進(jìn)制1101轉(zhuǎn)換為十進(jìn)制
1101=1*2^3+1*2^2+0*2^1+1*2^0=13
八進(jìn)制126轉(zhuǎn)換成十進(jìn)制
128=1*8^2+2*8^1+6*8^0=86
###十進(jìn)制轉(zhuǎn)換成其它進(jìn)制
十進(jìn)制26轉(zhuǎn)換成二進(jìn)制
26/2=13 余 0
13/2=6 余 1
6/2=3 余 0
3/2=1 余 1
結(jié)果為11010
十進(jìn)制37轉(zhuǎn)換成二進(jìn)制
37/2=18 余 1
18/2=9 余0
9/2=4 余 1
4/2=2 余 0
2/2=1 余 0
結(jié)果為100101
十進(jìn)制89轉(zhuǎn)換成二進(jìn)制
89/2=44 余1
44/2=22 余0
22/2=11 余0
11/2=5 余1
5/2=2 余1
2/2=1 余0
結(jié)果為1011001
十進(jìn)制489轉(zhuǎn)換為8進(jìn)制
489/8=61 余1
61/8=7 余 5
結(jié)果為751
#####小結(jié):10進(jìn)制轉(zhuǎn)換為N進(jìn)制,將十除以N,得到的商再除以N,以此類(lèi)推直到商小于N,列出各步的余數(shù),最有由下往上倒著余數(shù)拼,高位補(bǔ)零。
#八四二一轉(zhuǎn)換法
二進(jìn)制100101轉(zhuǎn)成成十進(jìn)制
1*2^5+1*2^2+1*2^0=37
挑出里面所有的1,1*2^(n-1)。必須熟練記住2的各個(gè)次方,這是作為一個(gè)程序員的基礎(chǔ)。
十進(jìn)制66轉(zhuǎn)換成二進(jìn)制
66=64+2=1000010
把數(shù)分成幾個(gè)2的次方的和
二進(jìn)制10110111101轉(zhuǎn)換成16進(jìn)制
0101 1011 1101=5BD7
十六進(jìn)制轉(zhuǎn)為二進(jìn)制
1c對(duì)應(yīng)的是 0001 1100
結(jié)果為 11100
二進(jìn)制 100101110轉(zhuǎn)換為八進(jìn)制
100 101 110對(duì)應(yīng) 4 5 6
結(jié)果為456
# 進(jìn)制轉(zhuǎn)換(小數(shù))
###十進(jìn)制轉(zhuǎn)二進(jìn)制
+十進(jìn)制數(shù) 10.25 轉(zhuǎn)換為 二進(jìn)制
整數(shù)部分 10 轉(zhuǎn)換二進(jìn)制 為 1010
小數(shù)部分 0.25
0.25 * 2 = 0.5 取 0??小數(shù)部分 0.5
0.5??* 2 = 1???取 1??小數(shù)部分 0.0??結(jié)束
最后結(jié)果??1010.01
+十進(jìn)制數(shù) 12.58 轉(zhuǎn)換為 二進(jìn)制
整數(shù)部分 12 轉(zhuǎn)換為 二進(jìn)制??1100
小數(shù)部分 0.58
0.58 * 2 = 1.16 取??1??小數(shù)部分 0.16
0.16 * 2 = 0.32 取??0??小數(shù)部分 0.32
0.32 * 2 = 0.64 取??0??小數(shù)部分 0.64
0.64 * 2 = 1.28 取??1??小數(shù)部分 0.28
0.28 * 2 = 0.56 取??0??小數(shù)部分 0.56
0.56 * 2 = 1.12 取??1??小數(shù)部分 0.12
繼續(xù) 永遠(yuǎn)也玩不了 ....
結(jié)果 1100.100101....
+**總結(jié)**
小數(shù)部分只有是 0.5 0.25 0 .75 0.125 0.0625 等 可以是 有限小數(shù) 轉(zhuǎn)換為分?jǐn)?shù)后,分母是 2的次方數(shù) 才可以轉(zhuǎn)為有限小數(shù)
同樣適用 十進(jìn)制 轉(zhuǎn) 其他進(jìn)制
###二進(jìn)制轉(zhuǎn)十進(jìn)制
+二進(jìn)制 1101.1101 轉(zhuǎn)為 十進(jìn)制
整數(shù)部分 1101轉(zhuǎn)為二進(jìn)制 為 13
小數(shù)部分
0.11011 = 1*2^-1 + 1 * 2^-2 + 0 * 2^-3 + 1 * 2^-4 = 0.5 + 0.25 + 0 + 0.0625 = 0.8125
最后結(jié)果??13.8125
同樣適用 其他進(jìn)制 轉(zhuǎn)換為 十進(jìn)制
###二進(jìn)制和八進(jìn)制或十六進(jìn)制 的小數(shù)轉(zhuǎn)換
###二進(jìn)制 10.10010101 轉(zhuǎn)換為 八進(jìn)制
整數(shù)部分 10 八進(jìn)制 為 2
部分 進(jìn)行拆分 3個(gè)一組, 不足右補(bǔ)零
100 -> 4
101 -> 5
010 -> 2
最后結(jié)果??4.452
+二進(jìn)制數(shù) 10.10010101 轉(zhuǎn)換為 十六進(jìn)制
整數(shù)部分 10 -> 2
小數(shù)部分 拆分,4位一組
1001 -> 9
0101 -> 5
最后結(jié)果??2.95
+八進(jìn)制 17.236 轉(zhuǎn)換為 2進(jìn)制
整數(shù)部分 17 -> 1111
小數(shù)部分
2 -> 010
3 -> 011
6 -> 110
最后結(jié)果 1111.010011110
+十六進(jìn)制 a.3ef 轉(zhuǎn)換為 2進(jìn)制
整數(shù)部分??a -> 1010
小數(shù)部分
3 -> 0011
e -> 1110
f -> 1111
最后結(jié)果 1010.001111101111
#二進(jìn)制運(yùn)算
+二進(jìn)制加法
1101 + 100101
000110
+100101
---------
101011
二進(jìn)制減法
1001001 - 10011
1001001
- 10011
---------------
110110
二進(jìn)制乘法
1001 * 110
1001
x??110
-------------
0000
1001
1001
---------------
110110
二進(jìn)制除法
100110 / 110
110
-----------------
110)100110
110
--------------------------
111
110
--------------------------
10
結(jié)果 110 余 10