我如何做10101base2 + 111base2 =? 我已经知道如何将基数转换为另一个基数。 但是如何添加呢?
答案 0 :(得分:2)
我发现java的BigInteger是其中最好的用于位操作的。在其广泛的用法(主要用于存储大量数字及其广泛支持的操作)中,你可以选择从2到36的基本转换。至于这些二进制数字的添加,你可以使用他们提供的BigInteger.add(BigIntger)
函数。
示例:
BigInteger num_1=new BigInteger("10101",2); //Store as Binary
BigInteger num_2=new BigInteger("111",2); //Store as Binary
BigInteger result=num_1.add(num_2);
//Display the result using BigInteger.toString(int base)
System.out.println("Result = "+result.toString(10)); //Showing result in Decimal base here
当然,如果它有小数位数,则使用William Gaul描述的方法。
答案 1 :(得分:1)
int result = 0b10101 + 0b111;
或者如果您的输入是字符串:
int result = Integer.parseInt("10101", 2) + Integer.parseInt("111", 2);
编辑:如果您正在询问如何以二进制形式查看结果,还有以下内容:
System.out.println(Integer.toBinaryString(result));