我正在尝试更改数值的LSB,例如50,其中LSB为0,因为50%2为0(余数运算符)为1,因此在这种情况下将LSB从0更改为1。 代码如下:
//Get the LSB from 50 using the modulas operator
lsb = 50 % 2;
//if the character equals 1
//and the least significant bit is 0, add 1
if(binaryValue == '1' && lsb ==0)
{
//This clearly does not work.
//How do I assign the altered LSB (1) to the value of 50?
50 = lsb + 1;
}
我在if语句中遇到问题,我想绑定更改的LSB,在这种情况下是1到50的值。这不是完整代码,因此所有值都不同。 感谢
答案 0 :(得分:3)
xor operation ^
可用于翻转单个位的值。例如
int value = 4;
value = value ^ 1;
System.out.println(value);
输出5,因为最低有效位变为1。
答案 1 :(得分:3)
java中的XOR:
System.out.println(50 ^ 1);