进制转换

Posted hzpeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进制转换相关的知识,希望对你有一定的参考价值。

R制转换成十进制

&nmsp;使用按权展开方法,具体操作方法为:将R进制的每一位数值用R的k次方表示,即幂的底数是R,指数是K,K与该位和小数点之间的距离有关。当该位位于小数点的左边,K值是该位和小数点之间数码的个数,而当该位位于小数点的右边,K值是负值,其绝对值是该位和小数点之间的数码的个数+1。

?例如:二进制 10100.01 = 1 * 2 ^ 4 + 1 * 2 ^ 2 + 1 * 2 ^ - 2 = 16+4+1=20.25 这里需要注意小数点左边数码从0开始
?同理其他进制转换十进制也是如此,只需要更换底数为当前进制。

十进制转换R进制

?短除法:用十进制数除以要转换的进制数,一直除到零为止,然后将余数倒序排上去就是二进制了。
?例如:94转换为二进制数
?94/2=47 余 0
?47/2=23 余 1
?23/2=11 余 1
?11/2=5 余 1
? 5/2=2 余 1
? 2/2=1 余 0
? 1/2=0 余 1
? 所以94的二进制位1011110

二进制转八进制

? 将二进制从右边开始划分,三个数字为一份,如:100001110 划分成 010|001|110 不足的补0 然后计算每一份的值 :1 * 2 ^ 1 | 1 * 2 ^ 0 | 1 * 2 ^ 1 + 1 * 2 ^ 2 = 216

二进制转换16进制

? 将二进制从右边开始划分为一对四的关系,如:10001110 划分成 1000|1110 = 1 * 2 ^ 3 | 1 * 2 ^ 1+ 1 * 2 ^ 2 + 1 * 2 ^ 3 = 8E
? 这里的E代表14 十六进制中A代表10以此类推 B=11、C=12、D=13、E=14

以上是关于进制转换的主要内容,如果未能解决你的问题,请参考以下文章

进制转换

PHP进制转换[实现28163664进制至10进制相互转换]

进制转换,请将一个n进制的数转换成m进制的数,并输出.

Java十进制与其他进制相互转换

Java十进制与其他进制相互转换

编程算法基础-2.3进制转换