(1)、十进制->十进制
(高位)765(低位) = 510^(1-1) + 610^(2-1) + 7*10^(3-1) = 765;说明:括号为次方值;
十进制其实是每位的数字乘以10的当前位的倒数位置-1的值。
(2)、二进制->十进制
(高位)1011(低位) = 12^(1-1) + 12^(2-1) + 02^(3-1) +12^(4-1) = 11;
二进制转十进制其实是每位的数字乘以2的当前位的倒数位置-1的值。
(3)、八进制->十进制
0632 = 28^(1-1) + 38^(2-1) + 68^(3-1) = 2 + 24 + 664 = 26 + 384 = 410;
(4)、十六进制->十进制
0x11 = 116^(1-1) + 116^(2-1) = 1 + 16 = 17;
(5)、二进制->八进制(由于三位最大二进制111的十进制值为7,而八进制是逢8进1,所以二进制转换成八进制时可以采用3位3位算)
101011 = 101-011 = 5 – 3 = 053;
(6)、二进制->十六进制
10011101 = 1001 – 1101 = 9 – D(13) = 0x9D;
结论:
八进制数,其实就是二进制位中的3个二进制位为一个八进制位,二进制位不够分,左边高位补零即可;
十六进制,其实就是二进制位中的4个二进制位为一个十六进制位;
(7)、十进制->二进制
十进制除于2求余,倒序读成二进制;
这个的意思是::将一个十进制数除以二,得到的商再除以二,依此类推直到商等于一或零时为止,倒取将除得的余数,即换算为二进制数的结果。
**二进制转十进制快速方法 **
以8位 来演示:
1.第一种:
00000001 1
00000010 2
00000100 4
00001000 8
00010000 16
00100000 32
01000000 64
10000000 128
2.第二种:
00000001 1
00000011 3
00000111 7
00001111 15
00011111 31
00111111 63
01111111 127
3.第三种
10000000 128
11000000 192
11100000 224
11110000 240
11111000 248
11111100 252
11111110 254
举个例子: 11101011
可分为:
11100000(上面第三种类型) 224
00001000(上面第一种类型) 8
00000011(上面第二种类型) 3
我们通过记住上面三种类型的转换,再用加 法(加法口算你会吧)立即得到结果:235
方法二:
熟记以下排列,其实很Easy了,从右往 左,依次是前一个数的2倍:
256 128 64 32 16 8 4 2 1
随便写个数字比如48
48 = 32 + 16,所以在32 和 16所在的位置为1,其余为0,
转为2进制就是
256 128 64 32 16 8 4 2 1
0 0 0 1 1 0 0 0 0
二进制转十进制就更简单了,
比如随便写的一串 01111101
先写上 : 0 1 1 1 1 1 0 1
然后填充 128 64 32 16 8 4 2 1
十进制为 64+32+16+8+4+1=125