人类通常使用十进制(decimal number system),而在计算机世界都是采用二进制(binary number system)。主要是技术实现简单,计算机是由各种电子原器件组成,通常只有两个状态,接通与断开(on-off),这两种状态正好可以用“1”和“0”表示。
八进制(Octal number system)和十六进制(Hexadecimal)也是计算机中经常涉及到的进制。
八进制是逢八进一,十六进制是逢十六进制,其中10-A,11-B,12-C,13-D,14-E,15-F表示。
十进制 | 二进制 | 八进制 | 十六进制 |
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 3 | 3 |
4 | 100 | 4 | 4 |
5 | 101 | 5 | 5 |
6 | 110 | 6 | 6 |
7 | 111 | 7 | 7 |
8 | 1000 | 10 | 8 |
9 | 1001 | 11 | 9 |
10 | 1010 | 12 | A |
11 | 1011 | 13 | B |
12 | 1100 | 14 | C |
13 | 1101 | 15 | D |
14 | 1110 | 16 | E |
15 | 1111 | 17 | F |
16 | 10000 | 20 | 10 |
17 | 10001 | 21 | 11 |
18 | 10010 | 22 | 12 |
19 | 10011 | 23 | 13 |
20 | 10100 | 24 | 14 |
二进制与十进制之间互转
二进制小数
十进制 decimal : 0.1= 1/10 0.01=1/100 0.001=1/1000
二进制 binary : 0.1=1/2 0.01=1/2*2 0.001=1/2*2*2
十进制小数转二进制小数
0.6875*2=1.375 取整数1
0.375*2=0.75 取整数0
0.75*2=1.5 取整数1
0.5*2=1.0 取整数1
所以0.6875(10)=0.1011B
0.3*2=0.6 取整数0
0.6*2=1.2 取整数1
0.2*2=0.4 取整数0
0.4*2=0.8 取整数0
0.8*2=1.6 取整数1
0.6*2=1.2 取整数1
0.2*2=0.4 取整数0
0.4*2=0.8 取整数0
0.8*2=1.6 取整数1
0.6*2=1.2 取整数1
0.3(10)=0.0100110011B
小知识:明确提出二进制数概念
莱布尼兹(Gottfriend Wilhelm von Leibniz, 1646.7.1.—1716.11.14)
德国重要的自然科学家、数学家、物理学家、历史学家和 哲学家,一个举世罕见的科学天才,和牛顿同为微积分的创建人。
在数学史上,他应该是第一个明确提出二进制数这个概念 的科学家。