- 将一个十进制整数转换为N进制的方法有
- 除N取余法
所谓除N取余法,就是将一个是进制数除以N,得到一个商和一个余数,并记下这个余数r0。
然后将商作为被除数除以N,得到一个商和一个余数,并记下这个余数r1。
不断重复以上过程,直到商为0为止。
假设一共除了m次,则得到的N进制整数从高位到低位为r(m-1) ... r2 r1 r0。
如十进制整数10转化为2进制的过程为:
10/2 = 5余0
5/2 = 2余1
2/2 = 1余0
1/2 = 0余1
所以二进制形式为1010
- 降幂法
所谓降幂法就是将十进制整数不断减去与该整数最接近的N进制整数的位权,如果够减m次则对应N进制位上的数字为m(m<N),否则为0。得到的差值作为新的被减数进行下一次计算,直到被减数为0。
如十进制数130转换成8进制的过程为:
130-82=66
66-82=2
2-8(不够减)
2-1=1
1-1=1
所以对应的8进制整数为202
- 十进制小数转换为N进制小数的方法为
- 乘N取整法
所谓乘N取整法是将十进制的小数乘以N,得到的整数部分作为小数点后第一位。剩余的小数部分再乘以N,得到的整数部分作为小数点后第二位。直到剩余小数部分为0,或达到一定精度为止。
如十进制的0.54转换为16进制的过程为:
0.55*16=8.8 --8
0.8*16=12.8 --12(C)
0.8*16=12.8 --12(C)
0.8*16=12.8 --12(C)
...
由于不能被精确的转换,我们可以只取前4位,为0.8CCC
- 一般的十进制数转换为N进制数
分别转换整数和小数部分。
原文作者:MaggieDorami
版权声明:文章原创,欢迎转载,转载时请务必加上原文超链接、作者信息和本声明。