我需要做一个逆运算,由位与运算组成,我该怎么做?
我试过异或,但没用。
int i = 254 & 2;
Console.Write("254 & 2 ={0}", i + "\n");
Console.Write("{0} ^ 2 ={1}",i, (i ^ 2) + "\n");
不起作用。我该如何计算?
最佳答案
给定 i
,你无法返回 254
。通过 &
ing 它,您已经销毁了未存储在第二位中的数据。
1111 1110
&0000 0010
----------
0000 0010
您将如何恢复丢失的 6 位?对于 x & 2 == 2
,您几乎可以输入任何 x
,它都是真的。
0010 1010 // = 42
&0000 0010
----------
0000 0010
x
是 254 还是 42?你无法分辨。
关于c# - C#中按位与的逆运算是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/783237/