Java 什么是按位AND的反向操作?
我怎样才能从b和c得到a?什么是反向操作 代码如下:Java 什么是按位AND的反向操作?,java,jmf,j#,Java,Jmf,J#,我怎样才能从b和c得到a?什么是反向操作 代码如下: class s { public static void main(String ar[]) { int a = 20; int b = 5; int c = 0; c = (a & b) ; System.out.println(c); int d = (c & b); System
class s
{
public static void main(String ar[])
{
int a = 20;
int b = 5;
int c = 0;
c = (a & b) ;
System.out.println(c);
int d = (c & b);
System.out.println(d);
}
}
你不能。如果c中的一位为0,b中的对应位为0,则不可能知道a中的对应位是0还是1。通过类似的论证,按位或|运算符也是不可逆的。另一方面,^运算符的按位异或是可逆的。你不能。如果c中的一位为0,b中的对应位为0,则不可能知道a中的对应位是0还是1。通过类似的论证,按位或|运算符也是不可逆的。另一方面,^运算符的按位异或是可逆的。如果您查看and逻辑运算的真值表,您可以看到它包含三个FALSE和一个true。因此,这是无法逆转的
只有equals和xor具有平衡真值表,它们是两个可逆布尔运算符。如果您查看and逻辑运算的真值表,您可以看到它包含三个FALSE和一个true。因此,这是无法逆转的
只有equals和xor具有平衡真值表,它们是两个可逆布尔运算符。作为一个具体示例,如果对于1位数字,c是1,a是1,那么b可以是0或1。更一般地说,当c==a时,c=a | b这一事实没有提供关于b:Pb==n的信息┃ a==c&&c==a | b==Pb==n。作为一个具体的例子,如果对于1位数字,c是1,a是1,那么b可以是0或1。更一般地说,当c==a时,c=a | b这一事实没有提供关于b:Pb==n的信息┃ a==c&&c==a | b==Pb==n。