进制转换
三种常见的进制
进制 | 数码 | 基数 | 位权 |
---|---|---|---|
十进制(D) | 0,1,2,3,4,5,6,7,8,9 | 10 | 10k |
二进制(B) | 0,1 | 2 | 2k |
十六进制(H) | 0-9,A,B,C,D,E,F | 16 | 16k |
按权展开法(R进制转十进制)
操作方法:
- 将R进制数的每一位数值用Rk形式表示,即幂的底数是R,指数为k;
- k与小数点位置有关:
- 当该位位于小数点左边,k是该位与小数点之间数码的个数,从0开始;
- 当该位位于小数点右边,k是负数,其绝对值是与小数点之间数码个数加1。
示例:
-
二进制转十进制:
10100.01(2)=1x24+0x23+1x22+0x21+0x20+0x2-1+1x2-2=16+0+4+0+0+0+0.25=20.25 -
七进制转十进制:
604(7)=6x72+0x71+4x70=294+4=298
短除法(十进制转R进制)
操作方法:
- 除基取余法:
- 除基数(即R);
- 得到余数;
- 当商为0时停止;
- 从下往上读余数,即为结果。
示例
- 将 94 转换为二进制
验证一下:1011110(2)= 1x26+0x25+1x24+1x23+1x22+1x21+0x20=64+16+8+4+2=94 - 将 198 转换为十六进制
验证一下:B6 = 12x161+6x160=192+6=198
二进制与八进制码表
8为3的三次方,故以3位二进制数表示一位8进制数。
八进制 | 二进制 |
---|---|
0 | 000 |
1 | 001 |
2 | 010 |
3 | 011 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
八进制转二进制
即:203(8)= 010 000 011
直接查表即可
二进制转八进制
- 将2进制数从后往前,每三位分开,对应上方码表,即可快速找出;
例:101 000 110 111 = 5067(8) - 若拆分过程中最前面不够3位,则在前方用0补齐;
例: 11 101 001 010 = 011 101 001 010 = 3512(8)
二进制与十六进制码表
8为4的三次方,故以4位二进制数表示一位8进制数。
十六进制 | 二进制 |
---|---|
0 | 0000 |
1 | 0001 |
2 | 0010 |
3 | 0011 |
4 | 0100 |
5 | 0101 |
6 | 0110 |
7 | 0111 |
8 | 1000 |
9 | 1001 |
A | 1010 |
B | 1011 |
C | 1100 |
D | 1101 |
E | 1110 |
F | 1111 |
十六进制转二进制
即:2A3B(16)= 0010 1010 0011 1011
直接查表即可
二进制转十六进制
- 将2进制数从后往前,每三位分开,对应上方码表,即可快速找出;
例:1010 0001 1110 0000 = A1E0(16) - 若拆分过程中最前面不够4位,则在前方用0补齐;
例: 1 0101 0111 = 0001 0101 0111 = 157(16)
总结
- 进制转换常用基础知识暂时告一段落,有不足之处还请大家指正!
- 共同学习,共同进步!
如果大家遇到类似问题,欢迎评论区讨论,如有错误之处,敬请留言。