二进制转十进制:
1位二进制数:0、1
2位二进制数:00、01、10、11(即0、1、2、3)
3位二进制数:000、001、010、011、100、101、110、111(即1、2、3、4、5、6、7)
所以N位二进制数 = 2的N次方十进制数

因为二进制数11111=100000–1,所以等于2⁵–1,当然你不嫌麻烦也可以2⁴ + 2³+2² + 2¹ +2⁰。
二进制转十进制例子:
二进制数:10011001
计算方法:1*2⁷+0*2⁶+0*2⁵+1*2⁴+1*2³+0*2²+0*2¹+1*2⁰= 2⁷+2⁴+2³+2⁰ = 128+16+8+1=153
十进制转二进制:方法一:用2一直相除,将得出的余数倒序写就是结果了。
十进制转二进制例子:
十进制数:305
计算方法:
305/2 = 152 余1
152/2 = 76 余0
76/2 = 38 余0
38/2 = 19 余0
19/2 = 9 余1
9/2 = 4余1
4/2 = 2余0
2/2 = 1余0
1/2 = 0余1
所以倒序后结果为:100110001
可以验算一下:100110001 = 2⁸+2⁵+2⁴+2⁰= 256+32+16+1 = 305
方法二,降二次幂及减法混合计算:
2⁸ = 256,2⁷ = 128,2⁶ = 64,2⁵ = 32,2⁴ = 16,2³ = 8,2² = 4,2¹ = 2,2⁰ = 1。
1、将要计算的十进制数与上面2的n次方结果最接近且小于它的数进行相减
比如:十进制数142转二进制,2的n次方中最接近且小于它的数就是2⁷ = 128,然后将他们相减142-128=14,再拿继续匹配相减,以此类推,14-8=6,6-4=2,2-2=0。
2、然后在二进制列表中将相减过的数下记为1,没有的记为0
例:
128 -> 142-128=14 --> 1
64 --> 0
32 --> 0
16 --> 0
8 -> 14-8=6 --> 1
4 -> 6-4=2 --> 1
2 -> 2-2=0 --> 1
1 --> 0
所以十进制数142转二进制结果为10001110
可以验算一下:10001110= 2⁷+2³+2²+2¹= 128+8+4+2 = 142
1位二进制数:0、1
2位二进制数:00、01、10、11(即0、1、2、3)
3位二进制数:000、001、010、011、100、101、110、111(即1、2、3、4、5、6、7)
所以N位二进制数 = 2的N次方十进制数

因为二进制数11111=100000–1,所以等于2⁵–1,当然你不嫌麻烦也可以2⁴ + 2³+2² + 2¹ +2⁰。
二进制转十进制例子:
二进制数:10011001
计算方法:1*2⁷+0*2⁶+0*2⁵+1*2⁴+1*2³+0*2²+0*2¹+1*2⁰= 2⁷+2⁴+2³+2⁰ = 128+16+8+1=153
十进制转二进制:方法一:用2一直相除,将得出的余数倒序写就是结果了。
十进制转二进制例子:
十进制数:305
计算方法:
305/2 = 152 余1
152/2 = 76 余0
76/2 = 38 余0
38/2 = 19 余0
19/2 = 9 余1
9/2 = 4余1
4/2 = 2余0
2/2 = 1余0
1/2 = 0余1
所以倒序后结果为:100110001
可以验算一下:100110001 = 2⁸+2⁵+2⁴+2⁰= 256+32+16+1 = 305
方法二,降二次幂及减法混合计算:
2⁸ = 256,2⁷ = 128,2⁶ = 64,2⁵ = 32,2⁴ = 16,2³ = 8,2² = 4,2¹ = 2,2⁰ = 1。
1、将要计算的十进制数与上面2的n次方结果最接近且小于它的数进行相减
比如:十进制数142转二进制,2的n次方中最接近且小于它的数就是2⁷ = 128,然后将他们相减142-128=14,再拿继续匹配相减,以此类推,14-8=6,6-4=2,2-2=0。
2、然后在二进制列表中将相减过的数下记为1,没有的记为0
例:
128 -> 142-128=14 --> 1
64 --> 0
32 --> 0
16 --> 0
8 -> 14-8=6 --> 1
4 -> 6-4=2 --> 1
2 -> 2-2=0 --> 1
1 --> 0
所以十进制数142转二进制结果为10001110
可以验算一下:10001110= 2⁷+2³+2²+2¹= 128+8+4+2 = 142