一、数制
计算机中采用的是二进制,因为二进制互有运算简单,易实现且可靠,为逻辑设计提供了有利的途径、节省设备等优点 ,为了便于描述,又常用八、十六进制作为二进制的缩写。一般技术都采用进位计数:其特点是:
(1)逢N进一,N是每种计数制表示一位数所需要的符号数目为基数。
二进制:逢二进一,借一当二
八进制:逢八进一,借一当八
十六进制:逢十六进一,借一当十六
(2)数制转换:不同进位数制之间的转换原则:不同进位计数制之间的转换是根据两个有理数如果相等,则两数的整数和分数部分一定分别相等的原则进行的。也就是说,若转换前两数相等,转换后仍必须相等
十进制:有十个基数:0,1,2,3,4,5,6,7,8,9(小于10)
二进制:有两个基数:0,1(小于2)
八进制:有八个基数:0,1,2,3,4,5,6,7(小于8)
十六进制:有16个基数:0—9,A,B,C,D,E,F(A=10,B=11,C=12,D=13,E=14,F=15)
二、十进制与其他进制之间的转换
(1)与二进制之间的转换
a.十进制转二进制(0,1)
十进数除以2,除至0时所得余数按反方向写出,即为二进制
例如:7的二进制为111 7除以2 商3余1 ,3继续除以2,商1余1 则7的二进制数是111
36的二进制为100100 36除以2,商18余0,18继续除以2,商9余0,9除以2,商4余1,4除以二,商2余0,2除以2,商1余1 倒过来写出36的二进制为100100
b.二进制转十进制
计算公式:a*20+b*21+c*22......n*2n-1=
二进制转十进制是从最右边的数值开始依次向左进行转换,即a代表最右边的数值
例如:1011001转换为十进制为89
计算公式:1*20+0*21+0*22+1*23+1*24+0*25+1*26=89
(2)与八进制之间的转换
a.十进制转八进制(0,1,2,3,4,5,6,7)
十进制数逐次整除以8,直至商为0
例如:49写成八进制是61 49除以8,商6余1
125 写成八进制是175 125除以8,商15余5,15继续除以8,商1余7 倒过来写出125的八进制为175
b.八进制转十进制(同二进制转十进制)
计算公式:a*80+b*81+c*82......n*8n-1=
例如:2137向右转换为十进制为1119
计算公式:7*80+3*81+1*82+2*83=1119
(3)与十六进制之间的转换
a.十进制转十六进制[0—9,A,B,C,D,E,F(A=10,B=11,C=12,D=13,E=14,F=15)]
十进制数除以16,至商为0,所的余数按相反方向写出即为十六进制数
例如:75的十六进制为4B 75除以16 商4余11 11写作B反过来写成4B
296的十六进制为128 296除以16,商18余8,18继续除以16,商1余2 反过来写作128极为296的十六进制
b,十六进制转为十进制(同二进制、八进制一样)
计算公式:a*80+b*81+c*82......n*8n-1=
例如:1BC2写作十六进制为7106
计算公式:2*160+12*161+12*162+1*163=7106
三、二进制与八进制、十六进制之间的转换
(1)二进制与八进制之间的转换
a.二进制转换为八进制
对于整数,采用从右到左每三位一组,不够三位的左边补齐0,每组单位转换出来即为八进位制数
例如:001 101 111 011
1 5 7 3 即1 101 111 011的八进位制数为1573
b.八进位制数转换为二进位制数
将每位八进制由三位二进制代替即可
例如:3 7 6 2
11 111 110 010 即3762转换为二进制数为11 111 110 010
(2)二进制与十六进制之间的转换
a.二进制转十六进制(以每四位二进制数为一组,依次向左进行转换)
例如:1001 0111 0111 1001
9 7 7 9 即1001 0111 0111 1001的十六进制为9779
b.十六进制转换为二进制(将每一位十六进制数用4位二进制数来代替)
例如:8 7 6 5
1000 0111 0110 0101 即8765转换为二进制为1000 0111 0110 0101