任意进制数之间相互转换

来源:百度知道 编辑:UC知道 时间:2024/05/30 22:09:37
求任意进制数之间相互转换的通用方法。

尤其是二进制八进制十进制和十六进制之间相互转换的方法。

A进制数X在B进制下数值为Y

X每位A进制数字分别在B进制下表示为b0,b1,b2,b3,...(整数部分),b(-1),b(-2),b(-3),...

A进制数10在B进制下值为p

公式为
Y=b0*p^0+b1*p^1+b2*p^2+b3*p^3+...+b(-1)*p^(-1)+b(-2)*p^(-2)+b(-3)*p^(-3)+...

二进制八进制十六进制之间相互转换的方法

由于8,16是与2是指数关系,转换方法简单一些
以小数点为界,二进制每3个数字一组表示一个八进制数,二进制每4个数字一组表示一个十六进制数。这样就简化了公式:首先分组按照公式转换,再把得到的数排列在一起。
如:
101110010101.101(二)
=1011 1001 0101.1010(二)
=B95.A(十六)

7AF.8E(十六)
=0111 1010 1111.1000 1110(二)
=011 110 101 111.100 011 100(二)
=3657.434(八)

十进制和二进制八进制十六进制则可以采用
除2/8/16取余法(不另说明)

还可用公式
例子
198
=128+64+4+2
=10000000(二)
+ 1000000(二)
+ 100(二)
+ 10(二)
=11000110(二)

一个八进制等于三位二进制、一个十六进制等于四位二进制。直接数位数!