数据的表示方法
数据的表示方法通常有:二进制,八进制,十进制,十六进制
在日常生活中,人们广泛使用十进制数,在计算机中,十进制数的存储和运算都不大方便,于是二进制数应运而生。
但是对人们来说,二进制数的书写或阅读均很不方便,为此经常采用八进制或十六进制数。
二进制 | 八进制 | 十进制 | 十六进制 |
---|---|---|---|
0111 | 0007 | 0007 | 0007 |
1000 | 0010 | 0008 | 0008 |
1001 | 0011 | 0009 | 0009 |
1010 | 0012 | 0010 | 000A |
1011 | 0013 | 0011 | 000B |
1100 | 0014 | 0012 | 000C |
1101 | 0015 | 0013 | 000D |
1110 | 0016 | 0014 | 000E |
1111 | 0017 | 0015 | 000F |
不同进制之间的转换
十进制转二进制:
整数部分(除2取余):将十进制数除以2,所得余数(0或1)即为对应二进制数最低位的值;然后对上次所得的商除以2,所得余数即为二进制数次低位的值……(以此类推)
例:将(105)10转换成二进制
105 / 2 ““` 1
52 / 2 ““` 0
26 / 2 ““` 0
13 / 2 ““` 1
6 / 2 ““` 0
3 / 2 ““` 1
1 / 2 ““` 1
故(105)10 = (1101001)2
小数部分(乘2取整):对二进制数乘以2,所得乘积的整数部分即为对应二进制小数最高位的值;然后对所余的小数部分乘以2,所得乘积的整数部分为次高位的值……(以此类推)
例:将(0.3125)10转换为二进制数(要求4位有效位)
0.3125*2 ““` 0
0.6250*2 ““` 1
0.2500*2 ““` 0
0.5000*2 ““` 1
故(0.3125)10 = (0.0101)2
二进制转十进制
二进制转为十进制的方法比较简单,二进制数每一位都带权,带权值为2的i次方,用十进制计算出来就可得结果
例:将(0101.1)2转为十进制
(0101.1)2 = 0*2^3 + 1*2^2 + 0*2^1 + 1*2^0 + 1*2^-1 = (4.5)10
十六进制转二进制
在十六进制中用ABCDEF分别表示10,11,12,13,14,15
每1位十六进制数对应着4位二进制数
例:
(A)16 = (1010)2 (B)16 = (1011)2 ……
(12AB)16 = (0001 0010 1010 1011)2
二进制转十六进制
同理,每4位二进制对应1位十六进制数
例:
(1001 0010 0100 0111)2 = (9247)16
十进制,十六进制之间的转换
通过将十进制或十六进制转换成二进制,再将其转换成十六进制或十进制,不作过多阐述
八进制的转换和十六进制类似,每一位八进制对应三位二进制数,也不作过多阐述