布尔逻辑
简介
布尔(Boolean)是一种逻辑数据类型,它表达了一种简单基本的逻辑模型。
布尔类型的值有且仅有两种,即真(true)与假(false)
运算
非 not[1] 是一元运算,表示将值翻转。即将真变为假,假变为真。
与 and[2] 是二元运算,表示“且”关系。当 a
和 b
同为真时 a and b
为真,否则为假。
a and b | true | false |
---|---|---|
true | true | false |
false | false | false |
或 or[3] 是二元运算。当 a
和 b
之一为真时 a or b
为真,否则为假。
a or b | true | false |
---|---|---|
true | true | true |
false | true | false |
异或 xor[4] 是二元运算。当 a
和 b
恰一个为真时 a xor b
为真,否则为假。
a xor b | true | false |
---|---|---|
true | false | true |
false | true | false |
练习
用
not
和and
的复合运算表示or
用
not
和or
的复合运算表示and
用
not
和or
的复合运算表示xor
证明异或满足分配律与结合律
可以尝试使用 Venn 图来方便理解、刻画