进制之间相互转换的问题
目前最常用的进制是二进制、8进制、10进制、16进制
二进制
考虑二进制转换成其他进制
- 二进制转10进制: 各位数*2^n
-
二进制转8进制:
- 二进制转16进制: 与二进制转8进制雷同,不过只是变成了四位一组
8进制
考虑8进制转换成其他进制
- 8进制转换成10进制: 各位数*8^n
- 8进制转换成2进制: 与2进制转换成8进制的思路相反,将8进制各位转换成3位二进制数
- 8进制转换成16进制: 借助二进制进行转换
16进制
考虑16进制转换成其他进制
- 16进制转换成10进制: 各位数*16^n
- 16进制转换成2进制: 与2进制转换成16进制的思路相反,将16进制各位转换成4位二进制数
- 16进制转换成8进制: 借助二进制进行转换
10进制
考虑10进制转换成其他进制
-
10进制转换成2进制: 采用取余法
-
10进制转换成8进制: 采用取余法
-
10进制转换成16进制: 采用取余法
总结
根据以上转换规则,可以做出如下总结
- 其他进制转换成10进制时:其他进制各位数*进制基数^
- 10进制转换才成其他进制时,都是采用取余法
- 其他进制之间的转换(不包括10进制)
- 二进制转换成其他进制时,采用分割法将二进制数进行分割,8进制以3个二进制数进行分割,16进制以四个数进行分割,都是从最右边开始分割
- 其他进制转换2进制时, 将其他进制的各位数以此转换成二进制
- 除2进制和10进制外,其他各进制之间的转换都要依靠二进制或者10进制进行转换,在编程中若数字过大,建议采用二进制作为中间进制进行转换,否则会出现溢出情况。