八进制转换为十进制可以使用按权展开相加法,公式如下:
假设一个八进制数 anan−1⋯a1a0.a−1a−2⋯a−m,转换为十进制数 D 的公式为:
D=an×8n+an−1×8n−1+⋯+a1×81+a0×80+a−1×8−1+a−2×8−2+⋯+a−m×8−m
其中 ai 是八进制数的每一位数字,取值范围是 0 到 7,n 和 m 分别是整数部分和小数部分的位数。
例如,将八进制数 23.4 转换为十进制数:
整数部分:
2 在八进制数的十位上,对应权重为 81;3 在个位上,对应权重为 80。
整数部分转换为十进制的值为 2×81+3×80=2×8+3×1=16+3=19。
小数部分:
4 在八进制数的十分位上,对应权重为 8−1。
小数部分转换为十进制的值为 4×8−1=4×81=0.5。
最终结果:
将整数部分和小数部分相加,得到 19+0.5=19.5,即八进制数 23.4 转换为十进制数是 19.5。