一. 二进制、八进制、十六进制转换为十进制
方法:位权求和法
二进制用符号“B”表示 十进制用符号“D" 表示 八进制用符号"O"表示 十六进制用符号"H"表示
(100101.10111)B = (1*2^5 + 0*2^4 + 0*2^3 + 1*2^2 + 0*2^1 + 1*2^0 + 1*2^-1 + 0*2^-2 + 1*2^-3 + 1*2^-4 + 1*2^-5)D
(7376.3576)O = ( 7*8^3 + 3 *8^2 + 7*8^1 + 6*8^0 + 3*8^-1 + 5*8^-2 + 7*8^-3 + 6*8^-4)D
(9FC56.67A)H = (9*16^4+ 15*16^3+ 12*16^2+ 5*16^1+ 6*16^0+6*16^-1+7*16^-2+10*16^-3)D
二. 十进制转换为 二进制、八进制、十六进制
方法:整数部分 + 小数部分
整数部分·:除R倒取余数法 (从下到上取值)
193 397 746
193/2 = 96 ~ 1 397/8 = 49 ~ 5 746/16 = 46 ~ A
96/2 = 48 ~ 0 49/8 = 6 ~ 1 46/16 = 2 ~ E
48/2 = 24 ~ 0 6/8 = 0 ~ 6 2/16 = 0 ~ 2
24/2 = 12 ~ 0
12/2 = 6 ~ 0
6/2 = 3 ~ 0 (193)D = (11000001)B
3/2 = 1 ~ 1 ( 397)D = (615)O
1/2 = 0 ~ 1 (746)D = ( 2EA)H
小数部分:乘R倒取余数法 (从上到下取值,一般取到4到5位数字)
0.73 0.45 0.3
0.73 * 2 = 0.46 ~ 1 0.45 * 8 = 0.6 ~ 3 0.3 * 16 = 0.8 ~ 4
0.46 * 2 = 0.96 ~ 0 0.6 * 8 = 0.8 ~ 4 0.8 * 16 = 0.8 ~ C
0.96 * 2 = 0.92 ~ 1 0.8 * 8 = 0.4 ~ 6 0.8 * 16 = 0.8 ~ C
0.92 * 2 = 0.84 ~ 1 0.4 * 8 = 0.2 ~ 3 0.8 * 16 = 0.8 ~ C
(0.73)D ~ (0.1011) B (0.45)D ~ (0.3463)O (0.3)D ~ (0.4CCC)H
三. 二进制转化为 八进制、十六进制
1.二进制转八进制:取三合一法
取三和一法 :从小数点开始向左向右,每3位组成一个整体,转换为十进制,最左边的不够3位, 就在最左边补0,最右边的不够3位,就在最右边补0
例1 1001110010.1110001010
1 001 110 010.111 010 101 = 001 001 110 010 . 111 010 101
1 1 6 2 . 7 2 5
(1 001 110 010.111 010 101 )B = (1162.725)O
例2 1011101110.10111
10 101 110.101 11 = 010 110 . 101 110
2 6 . 5 6
(10 101 110.101 11)B = (26.52)O
2.二进制转十六进制:
方法:取四合一法
取四合一法:从小数点开始向左向右,每4位组成一个整体,转换为十进制数,最左边不够4 位, 就在最左边补0,最右边的不够4位,就在最右边补0
例1 1001110010.1110001010
10 0111 0010.1110 1010 1 = 0010 0111 0010 .1110 1010 1000
2 7 2 . E A 8
(10 0111 0010.1110 1010 1)B = (272.EA8)H
例2 11000101110.001111001
110 0010 1110.0011 1100 11 = 0110 0010 1110 . 0011 1100 1100
6 2 E . 3 C C
(11000101110.001111001)B = (62E.3CC)H
四. 八进制、十六进制转换成 二进制
1. 八进制转换成二进制
方法:一分为三法
一分为三法:将每一个八进制数字转换为3位数字的二进制数表示
75673
75673 = 111 101 110 111 011
7 5 6 7 3
(75673)O = (111 101 110 011)B
2. 十六进制转化成二进制
方法:一分为四法
一分为四法:将每一个十六进制数转换为4位数组的二进制数表示
9F6D4
9F6D4= 1001 1111 0110 1101 0100
9 F 6 D 4
(9F6D4)H = (1001 1111 0110 1101 0100)B
五. 十进制和二进制之间的快速转换
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
1.十进制转化为二进制
例1: 67=64+2+1所以再64,2,1下面位置补充1,其余补充0
补充位置时,从数值较大位置开始补充,然后按照数值大小依次补充1或0
64 32 16 8 4 2 1
1 0 0 0 0 1 1
所以(67)D = (1000011)B
例2:197 =1* 2 ^ 7 + 1* 2 ^ 6 + 0* 2 ^ 5+ 0* 2 ^ 4+ 0* 2 ^ 3+ 1* 2 ^ 2 + 0* 2 ^ 1+ 1* 2 ^ 0 =128+64+4+1
128 64 32 16 8 4 2 1
1 1 0 0 0 1 0 1
(197 )D = (11000101)B
2.二进制转十进制
例1: 10010111
先写上 : 1 0 0 1 0 1 1 1
然后填充: 128 64 32 16 8 4 2 1
十进制为: 128+16+4+2+1=251
(10010111)B =(251)D
例2: 10101110
先写上 : 1 0 1 0 1 1 1 0
然后填充: 128 64 32 16 8 4 2 1
十进制为:128+32+8+4+2 = 174
(10101110)B = (174)D
六. 八进制与十六进制之间的转换
方法:八进制与十六进制不能直接转换,需要通过转换成二进制或十进制进行互相转换
1. 八进制转换成十六进制
75673
第一步:八进制 转换成 二进制 方法:一分为三法
75673 = 111 101 110 111 011
7 5 6 7 3
(75673)O = (111 101 110 111 011)B
第二步:二进制转换成十六进 方法:取四合一法
111 1011 1011 1011 = 0111 1011 1011 1011
7 B B B
(111 1011 1011 1011)B = (7BBB)H
所以:(75643)O =(7BBB)H
2. 十六进制转化成八进制
例如: 9F6D4
第一步:十六进制 转换成 二进制 方法:一分为四法
9F6D4= 1001 1111 0110 1101 0100
9 F 6 D 4
(9F6D4)H = (1001 1111 0110 1101 0100)B
第二步:二进制转换成八进制 方法:取三合一法
10 011 111 011 011 010 100 = 010 011 111 011 011 010 100
2 3 7 3 3 2 4
(10011111011011010100)B = (2373324)O
所以: (9F6D4)H = (2373324)O
注意:八进制与十六进制之间的转换,如果转换成十进制再转换成八进制或十六进制过程会非常繁琐,计算量比较大,如果转换成二进制会方便很多,建议采用转换成 二进制的方法