进制转换

进制转换教程

进制转换,我们大体可以分为三种情况,即,分别为:将 N 进制转为十进制、将十进制转为 N 进制其他进制之间的互转

N进制转十进制详解

定义

N 进制转十进制,也就是将 二进制八进制 或者 十六进制 转成十进制数。

算法

N 进制转十进制的基本思想就是 “按权相加”。对于整数部分,从右往左看,第 i 位的位权等于Ni-1,对于小数部分,恰好相反,要从左往右看,第 j 位的位权为N-j

案例

二进制整数转十进制

二进制整数转十进制,就是每一位不停乘以 2 的 N次方

100100111 = 1×2^8 + 0×2^7 + 0×2^6 + 1×2^5 + 0×2^4 + 0×2^3 + 1×2^2 + 1×2^1 + 1×2^0 = 295

我们将二进制的 100100111 转成十进制的数,基本思想就是将每一位单独乘以 2 的 N 次方,然后全部相加,最终得到转换后的十进制数。

八进制整数转十进制

八进制整数转十进制,就是每一位不停乘以 8 的 N次方

71532 = 7×8^4 + 1×8^3 + 5×8^2 + 3×8^1 + 2×8^0 = 29530

我们将八进制的 71532 转成十进制的数,基本思想就是将每一位单独乘以 8 的 N 次方,然后全部相加,最终得到转换后的十进制数。

十六进制整数转十进制

十六进制整数转十进制,就是每一位不停乘以 16 的 N次方

A79BEF = A×16^5 + 7×16^4 + 9×16^3 + B×16^2 + E×16^1 + F×16^0 = 10984431

我们将十六进制的 A79BEF 转成十进制的数,基本思想就是将每一位单独乘以 16 的 N 次方,然后全部相加,最终得到转换后的十进制数。

二进制小数转十进制

二进制小数转十进制,就是每一位小数不停乘以 2 的 -N 次方

101.011 = 1×2^2 + 0×2^1 + 1×2^0 + 0×2^-1 + 1×2^-2 + 1×2^-3 = 5.375

我们将二进制的 101.011 转成十进制的数,基本思想就是将整数的每一位单独乘以 2 的 N 次方,小数的每一个乘以 2 的 -N 次方,然后全部相加,最终得到转换后的十进制数。

八进制小数转十进制

八进制小数转十进制,就是每一位小数不停乘以 8 的 -N 次方

423.5176 = 4×8^2 + 2×8^1 + 3×8^0 + 5×8^-1 + 1×8^-2 + 7×8^-3 + 6×8^-4 = 275.65576171875

我们将八进制的 423.5176 转成十进制的数,基本思想就是将整数的每一位单独乘以 8 的 N 次方,小数的每一个乘以 8 的 -N 次方,然后全部相加,最终得到转换后的十进制数。

十六进制小数转十进制

十六进制小数转十进制,就是每一位小数不停乘以 16 的 -N 次方

A7B.0EF = A×16^2 + 7×16^1 + B×16^0 + 0×16^-1 + E×16^-2 + F×16^-3 = 2683.058349609375

我们将十六进制的 A79BEF 转成十进制的数,基本思想就是将每一位单独乘以 16 的 N 次方,然后全部相加,最终得到转换后的十进制数。

进制转换教程总结

N 进制转十进制的基本思想就是 “按权相加”。对于整数部分,从右往左看,第 i 位的位权等于Ni-1,对于小数部分,恰好相反,要从左往右看,第 j 位的位权为N-j