进位制转换
部分转自网站:http://www.cnblogs.com/llllllpppppp/p/7652380.html
现在noip初赛,进制方面主要考察二进制、十进制、十六进制、八进制
(1)二、四、八、十六互转通用方法:
以八进制转二进制为例
先把关系表列出来:
八进制数 |
二进制数 |
0 |
000 |
1 |
001 |
2 |
010 |
3 |
011 |
4 |
100 |
5 |
101 |
6 |
110 |
7 |
111 |
二转八:
例如:10010011
2^3=8
所以使用三位一合的方法(以小数点为分界)
对照上面的表 10 010 011
2 2 3
八转二:
同理,一位三分法
例如:7643
对照上面的表 7 6 4 3
111 110 100 011
(2) 二转十和十转二
二转十:个位*2^0,十位*2^1,百位*2^2…… 若是小数,十分位*2^-1,百分位*2^-2……然后加起来就行了
十转二:整数转换:短除法,倒取余数
小数转换:整数部分同上,小数部分短乘,正取余数
举个例子:0.625*2=1.25 取1
0.25*2=0.5 取0
0.5*2=1取1,结束,答案为:0.101(从上往下)