概念

逻辑运算又称布尔运算。
布尔用数学方法研究逻辑问题,成功地建立了逻辑演算。
他用等式表示判断,把推理看作等式的变换。这种变换的有效性不依赖人们对符号的解释,只依赖于符号的组合规律 。
这一逻辑理论人们常称它为布尔代数。20世纪30年代,逻辑代数在电路系统上获得应用,随后,由于电子技术与计算机的发展,出现各种复杂的大系统,它们的变换规律也遵守布尔所揭示的规律。
逻辑运算 (logical operators) 通常用来测试真假值。
最常见到的逻辑运算就是循环的处理,用来判断是否该离开循环或继续执行循环内的指令。

表示方法编辑

"∨" 表示"或" (逻辑加法)
"∧" 表示"与". (逻辑乘法)
"┐"表示"非". (逻辑否定)
"=" 表示"等价".
1和0表示"真"和"假"
(还有一种表示,"+"表示"或", "·"表示"与")

各种编程语言中的逻辑运算符

各种编程语言中的逻辑运算符  
作用
C
Pascal
Java
VB C++
&
and
&
and and 或 &&
|
or
|
or or 或 ||
!
not
!
not not 或 !

运算规则

 

A......B..................A And B....A Or B........A Xor B
0......0.......................0..............0................0
1......0.......................0..............1................1
0......1.......................0..............1................1
1......1.......................1..............1................0
简单的说
And:与运算。只有同为真时才为真,近似于乘法。
Or:或运算。只有同为假时才为假,近似于加法。
Xor:异或运算。相同为假,不同为真。

定义

 

真真得真(与运算),假假得假(或运算),同假异真(异或运算)。
基本公式
注:此处“+”表示“或”," · " 表示“与”,“ ' ”表示“非”
(1) 1' = 0; 0' = 1
(2) A + 1 = 1
(3) A + 0 = A
(4) A + A = A
(5) A + A' = 1
(6) A · 0 = 0
(7) A · 1 = A
(8) A · A = A
(9) A · A' = 0
(10) A + B = B + A
(11) A · B = B · A
(12) A + (B + C) = (A + B) + C
(13) A · (B · C) = (A · B) · C
(14) A · (B + C) = A · B + A · C
(15) A + (B · C) = (A + B) · (A + C)
(16) (A')' = A
(17) (A + B)' = A' · B'
(18) (A · B)' = A' + B
逻辑变量之间的运算称为逻辑运算。二进制数1和0在逻辑上可以代表“真”与“假”、“是”与“否”、“有”与“无”。这种具有逻辑属性的变量就称为逻辑变量。
计算机的逻辑运算和算术的逻辑运算的主要区别是:逻辑运算是按位进行的,位与位之间不像加减运算那样有进位或借位的联系。
逻辑运算主要包括三种基本运算:逻辑加法(又称“或”运算)、逻辑乘法(又称“与”运算)和逻辑否定(又称“非”运算)。此外,“异或”运算也很有用。

逻辑加法

 

逻辑加法(“或”运算)通常用符号“+”或“∨”来表示。逻辑加法运算规则如下:
0+0=0, 0∨0=0
0+1=1, 0∨1=1
1+0=1, 1∨0=1
1+1=1, 1∨1=1
从上式可见,逻辑加法有“或”的意义。也就是说,在给定的逻辑变量中,A或B只要有一个为1,其逻辑加的结果为1;两者都为1则逻辑加为1。

逻辑乘法

 

逻辑乘法(“与”运算)通常用符号“×”或“∧”或“·”来表示。逻辑乘法运算规则如下:
0×0=0, 0∧0=0, 0·0=0
0×1=0, 0∧1=0, 0·1=0
1×0=0, 1∧0=0, 1·0=0
1×1=1, 1∧1=1, 1·1=1
不难看出,逻辑乘法有“与”的意义。它表示只当参与运算的逻辑变量都同时取值为1时,其逻辑乘积才等于1。

逻辑否定

 

逻辑非运算又称逻辑否运算。其运算规则为:
┐0=1 (非0等于1)
┐1=0 (非1等于0)

异或运算

 

异或运算(半加运算)通常用符号"⊕"表示,其运算规则为:
0⊕0=0 0同0异或,结果为0
0⊕1=1 0同1异或,结果为1
1⊕0=1 1同0异或,结果为1
1⊕1=0 1同1异或,结果为0
即两个逻辑变量相异,输出才为1
原文:https://baike.baidu.com/item/%E9%80%BB%E8%BE%91%E8%BF%90%E7%AE%97/7224729