您的位置:首页 > 运维架构

布尔运算(Boolean Operations)

2016-04-24 17:18 288 查看

1. 异或(^)

printf("%d\n", -2^-3);
// 3;
// 提示:补码,也即计算机对负数的表示是通过补码的形式;
// -2 ⇒ 1000 0010 ⇒ 1111 1101 ⇒ 1111 1110
// -3 ⇒ 1000 0011 ⇒ 1111 1100 ⇒ 1111 1101
// 异或完了之后的结果就是 3


2. 与非(NAND)

Y = !(A & B)


真值表:

0 0 ⇒ 1

0 1 ⇒ 1

1 0 ⇒ 1

1 1 ⇒ 0

3. 或非(NOR)

Y = !(A | B)


注意 与非和或非真值表在形式上十分特殊:

真值表:

0 0 ⇒ 1

0 1 ⇒ 0

1 0 ⇒ 0

1 1 ⇒ 0

4. 异或(XOR)

Y = ((A & !B) | (!A & B))


也即异或逻辑,可以通过基本布尔运算的叠加而来;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: