1

我怎样才能aband得到c?什么是反向操作?

这是代码:

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);
    }
}
4

2 回答 2

8

你不能。如果 in 中的某个位c为 0,而 in 中的对应位b为 0,则无法知道 in 中的对应位a是 0 还是 1。通过类似的论点,按位或(|运算符)也是不可逆的。另一方面,按位异或(^运算符)可逆的。

于 2011-03-16T19:21:05.990 回答
1

如果你看一下逻辑运算的真值表and,你可以看到它包含三个假和一个真。因此无法逆转。

只有equalsxor有平衡的真值表,它们是两个可逆的布尔运算符。

于 2011-03-16T19:21:47.790 回答