快速掌握二进制

2017-07-24  本文已影响0人  __曼珠沙华

#快速掌握进制

###何为进制

进制也就是进位制,是人们规定的一种进位方法。对于任何一种进制————X进制,就表示某一位置上的数运算时是逢X进一位。十进制就是逢十进一,十六进制就是逢十六进一,二进制就是逢二进一,以此类推,X进制就是逢x进位。

##常见的进制

+二进制

0 、1、 10、 11、 100、 101、 110、 111、 1000 ....

+十进制

0 、1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 11、 12、 13 ....

+八进制

0、1、2、3、4、5、6、7、10、11、12、13、14、15、16、17、20、21 ...

+十六进制

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 .....

#二进制

二进制由0,1两个基本数字组成。二进制的规则是“逢二进一,借一当二”

#八进制

八进制由数码0,1,2,3,4,5,6,7,八个数字组成,每个数码对应三位二进制,八进制按照“逢八进一”的原则。基R=8=2^3

#十进制

十进制由0,1,2,3,4,5,6,7,8,9十个数字组成,十进制按照“逢十进一”的原则

#十六进制

十六进制由16个字符组成,从0~9以及A,B,C,D,E,F。十六进制是“逢十六进一”即基R=16=2^4

### 2 的次方数

*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

#进制转换

###其他进制转十进制

二进制1101转换为十进制

1101=1*2^3+1*2^2+0*2^1+1*2^0=13

八进制126转换成十进制

128=1*8^2+2*8^1+6*8^0=86

###十进制转换成其它进制

十进制26转换成二进制

26/2=13 余 0

13/2=6 余 1

6/2=3 余 0

3/2=1 余 1

结果为11010

十进制37转换成二进制

37/2=18 余 1

18/2=9 余0

9/2=4 余 1

4/2=2 余 0

2/2=1 余 0

结果为100101

十进制89转换成二进制

89/2=44 余1

44/2=22 余0

22/2=11 余0

11/2=5 余1

5/2=2 余1

2/2=1 余0

结果为1011001

十进制489转换为8进制

489/8=61 余1

61/8=7 余 5

结果为751

#####小结:10进制转换为N进制,将十除以N,得到的商再除以N,以此类推直到商小于N,列出各步的余数,最有由下往上倒着余数拼,高位补零。

#八四二一转换法

二进制100101转成成十进制

1*2^5+1*2^2+1*2^0=37

挑出里面所有的1,1*2^(n-1)。必须熟练记住2的各个次方,这是作为一个程序员的基础。

十进制66转换成二进制

66=64+2=1000010

把数分成几个2的次方的和

二进制10110111101转换成16进制

0101 1011 1101=5BD7

十六进制转为二进制

1c对应的是 0001 1100

结果为 11100

二进制 100101110转换为八进制

100 101 110对应 4 5 6

结果为456

# 进制转换(小数)

###十进制转二进制

+十进制数 10.25 转换为 二进制

整数部分 10 转换二进制 为 1010

小数部分 0.25

0.25 * 2 = 0.5 取 0  小数部分 0.5

0.5  * 2 = 1   取 1  小数部分 0.0  结束

最后结果  1010.01

+十进制数 12.58 转换为 二进制

整数部分 12 转换为 二进制  1100

小数部分 0.58

0.58 * 2 = 1.16 取  1  小数部分 0.16

0.16 * 2 = 0.32 取  0  小数部分 0.32

0.32 * 2 = 0.64 取  0  小数部分 0.64

0.64 * 2 = 1.28 取  1  小数部分 0.28

0.28 * 2 = 0.56 取  0  小数部分 0.56

0.56 * 2 = 1.12 取  1  小数部分 0.12

继续 永远也玩不了 ....

结果 1100.100101....

+**总结**

小数部分只有是 0.5 0.25 0 .75 0.125 0.0625 等 可以是 有限小数 转换为分数后,分母是 2的次方数 才可以转为有限小数

同样适用 十进制 转 其他进制

###二进制转十进制

+二进制 1101.1101 转为 十进制

整数部分 1101转为二进制 为 13

小数部分

0.11011 = 1*2^-1 + 1 * 2^-2 + 0 * 2^-3 + 1 * 2^-4 = 0.5 + 0.25 + 0 + 0.0625 = 0.8125

最后结果  13.8125

同样适用 其他进制 转换为 十进制

###二进制和八进制或十六进制 的小数转换

###二进制 10.10010101 转换为 八进制

整数部分 10 八进制 为 2

部分 进行拆分 3个一组, 不足右补零

100 -> 4

101 -> 5

010 -> 2

最后结果  4.452

+二进制数 10.10010101 转换为 十六进制

整数部分 10 -> 2

小数部分 拆分,4位一组

1001 -> 9

0101 -> 5

最后结果  2.95

+八进制 17.236 转换为 2进制

整数部分 17 -> 1111

小数部分

2 -> 010

3 -> 011

6 -> 110

最后结果 1111.010011110

+十六进制 a.3ef 转换为 2进制

整数部分  a -> 1010

小数部分

3 -> 0011

e -> 1110

f -> 1111

最后结果 1010.001111101111

#二进制运算

+二进制加法

1101 + 100101

000110

+100101

---------

101011

二进制减法

1001001 - 10011

1001001

- 10011

---------------

110110

二进制乘法

1001 * 110

1001

x  110

-------------

0000

1001

1001

---------------

110110

二进制除法

100110 / 110

110

-----------------

110)100110

110

--------------------------

111

110

--------------------------

10

结果 110 余 10

上一篇下一篇

猜你喜欢

热点阅读