对二进制运算取余操作,有整数,小数计算。
十进制转为二进制除二取法可以参考图例:
注意方向,要计算对。
以10进制转2进制为例:输入一个十进制数n,每次用n除以2,把余数记下来,再用商去除以2...依次循环,直到商为0结束,把余数倒着依次排列,就构成了转换后的二进制数。
所有进制之间的转换都是如此,2可以换成任何数字。十进制转二进制、八进制、十六进制、64进制,全部如下。
public class Main { public static void main (String[] args) { int n = 64;//需要转换的数字
int m = 5; //转换的进制(如果大于10,需考虑使用其他字符表示)
int t = 0; //用来记录位数
int bin = 0; //用来记录最后的二进制数
int r = 0; //用来存储余数
while(n != 0){
r = n % m;
n = n / m; //注意:n为int,可以保证其肯定是一个整数,且是进制转换需要的整数
bin += r * Math.pow(10,t); //pow函数:10的t次方
t++;
}
System.out.println(bin);
}
}
大概思路由代码实现的功能部分是这样。