目录
数制介绍
网络中传输的各式各样的信息都是依靠一种基本的数制计数方法——二进制数表示的。我们可以形象的理解为,在人类的世界里,通常采用十进制方法计数,而在网络世界里,计算机通常采用而进制方法计数。
数制的概念
数制:计数的方法,指用一组固定的符号和统一的规则来表示数值的方法,如在计数过程中采用进位的方法称为进位计数制。进位计数制有数位、基数、位权三个要素。
数位:指数字符号在一个数中所处的位置。
基数:指在莫种进位计数中数位上所能使用的数字符号的个数。列如,十进制数的基数是10,二进制数的基数是2。
位权:指在莫种进位数制中数位所代表的大小,即处在莫一位上的“1”所表示的数值的大小。对于一个N进制数(即基数为为N),若数位记作K,则权位可记作Nk,整数部分第i位的位权为
对于不同的数值,可以给数字加上括号,使用下标来表示该数字的数制(当没有下标识默认为十进制)列如:
所代表的数值是完全不同的。
处理用下标表示外,还可以用后缀字母来表示数制。
十进制数(Decimal nember)用后缀D表示或无后缀
二进制数(Binary nember)用后缀B表示。
十六进制数(Hexadcimal Number)用后缀H表示
在数制中,还有一个规则,就是N进制必须是逢N进一
十进制数的特点就是逢十进一。例如:
二进制数的特点是逢二进一。列如:
十六进制数的特点是逢十六进一。列如
计算机中常用的数制
计算机常用的数制有十进制,二进制和十六进制。
1.十进制(Decimal)
十进制的特点如下:
基数是十,数值部分用十个不同的数字符号0、1、2、3、4、5、6、7、8、9来表示。
逢十进一。
例如:对于123.45 小数点左边第一位代表个位, “3”在左边第一位上,它代表的数值是;“1”在小数点左边第三位上,它代表的是
;“5”在小数点右边第二位上。它代表的是
.
2. 二进制(Binary)
计算机中的数是用二进制数表示的,它的特点是逢二进一,因此在二进制中只有0和1两个单位
特点:
基数为2,数值部分用;两个不同的数字符号“0”“1”表示
逢二进一
要将二进制数转换为十进制数,通过按权展开相加即可。例如:
3.十六进制
特点:
基数为16,它有十六个数字符号:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 其中A-F分别代表10,11,12,13,14,15。
逢十六进一
十六进制与二进制的转换
因为 ,所以一位十六进制数相当于四位二进制数,因此,二进制和十六进制的转换方法和八进制转换类似,可使用四位分组方法。例如
2A4EH=10 1010 0100 1110b
10.4H=10000.01B
1101011.0011B=6B.3H
数制转换
二进制十进制的转换
将一个十进制整数转换为二进制数可以使用余除法,即:将要转换的十进制整数除以2,取余数在用商除以2,再取余数,知道商等于0位置,再将每次得到的余数按倒续的方法排列起来作为结果。
例如 125/2 =62 余1
62/2 =31 余0
31/2 =15 余1
15/2 =7 余1
7/2 =3 余1
3/2 =1 余1
1/2 =0 余1
把余数倒排可得到125的二进制数位1111101
十六进制与二进制十进制之间的转换
一个很小的十进制的三位数表示成二进制的时候就已经七位数了,而且由于二进制只有1和0两个数字,看起来非常的累,也很容易弄混。为了方便记忆,在写程序或使用数字时,我们使用更多的是十六进制。
从十进制向十六进制转换,也可以采用余数的方法,例如:
125/16 =7 余13
7/16 =0 余 7
也就是125=7DH
反过来,十六进制向十进制转换,也需要按权展开式,例如:
从二进制转十六进制会简单,我们从小数点开始向左向右把二进制数每四个分成一组,然后把每组二进制数对应的十六进制数写出来,就得到了对应的十六进制数
01111101B=0111 1101B=7 D=7DH
不同数制之间对应关系如表
二进制 | 十进制 | 十六进制 |
0 | 0 | 0 |
1 | 1 | 11 |
10 | 2 | 2 |
11 | 3 | 3 |
100 | 4 | 4 |
101 | 5 | 5 |
110 | 6 | 6 |
111 | 7 | 7 |
1000 | 8 | 8 |
1001 | 9 | 9 |
1010 | 10 | A |
1011 | 11 | B |
1100 | 12 | C |
1101 | 13 | D |
1110 | 14 | E |
1111 | 15 | F |
10000 | 16 | 10 |
10001 | 17 | 11 |
10010 | 18 | 12 |
10011 | 19 | 13 |