布尔代数由英国数学家乔治·布尔于1849年创立,是数字电路设计理论中重要的组成部分。逻辑变量之间的因果关系和依据这些关系进行的布尔逻辑推理可用代数运算表示,这种代数称为逻辑代数,它是一个由逻辑变量集合、常量“0”和“1”,以及逻辑与、逻辑或和逻辑非3种运算所构成的代数系统。
参与逻辑运算的变量叫逻辑变量,用A、B……表示,每个变量的取值非0即1。0和1不表示数的大小,而是代表两种不同的逻辑状态。
(1)正逻辑体制。当采用正逻辑体制时,规定高电平为逻辑“1”,低电平为逻辑“0”。
(2)负逻辑体制。当采用负逻辑体制时,规定低电平为逻辑“1”,高电平为逻辑“0”。
除非有特殊说明,本书采用正逻辑体制。
如果由若干个逻辑变量(如a、b、c、d)按逻辑与、逻辑或、逻辑非4种基本运算组合在一起得到一个表达式L,对逻辑变量的任意一组取值(如0000、0001、0010), L都有唯一的值与之对应,则称L为逻辑函数。由逻辑变量a、b、c、d所表示的逻辑函数记为
L=f(a,b,c,d)
两个主要的二元运算的符号定义为 ∧(逻辑与)和∨(逻辑或),把单个一元运算符号定义为 (逻辑非),并且还使用“0”(逻辑假)和“1”(逻辑真)。逻辑代数有下列性质。
1)结合律
2)交换律
3)吸收律
4)分配律
5)互补律
6)幂等律
7)有界律
8)德.摩根定律
9)对合律
为了兼容目前各种数字逻辑/数字电路教科书的表示方法,在本书后面将逻辑与表示成“·”,逻辑或表示为“+”,逻辑非表示为“—”,异或表示为“⊕”。
1)代入规则
任何一个含有变量X的等式,如果将所有出现变量X的位置都用一个逻辑函数F进行替换,此等式仍然成立。例如,等式:
B·(A+C)=B·A+B·C
将所有出现变量A的地方都用函数E+F代替,则等式仍然成立:
B·[(E+F)+C]=B·(E+F)+B·C=B·E+B·F+B·C
2)对偶规则
设F是一个逻辑函数式,如果将F中的所有的符号“·”变成“+”,符号“+“变成符号“·”,“0”变成“1”,“1”变成“0”,而变量保持不变。那么就得到了一个逻辑函数式F′,这个 F′就称为F 的对偶式。如果两个逻辑函数F和G相等,则它们各自的对偶式F′和G′也相等。例如:
F=A+B
使用对偶规则将等式改写为
F′=A·B
吸收律 成立,则它们的对偶式:
也是成立的。
3)反演规则
已知一个逻辑函数F,求 时,只要把F中的所有符号“·”变成“+”、符号“+”变成“·”、“0”变成“1”、“1”变成“0”,原变量变成反变量,反变量变成原变量,即得 。例如,等式:
使用反演规则,得到 :
反演规则也可通过德·摩根定律得到。
所有的逻辑函数表达式,不管逻辑关系多复杂,一定可以使用“与或”表达式或者“或与”表达式表示。由于在逻辑函数表达式中,逻辑与关系用符号“·”表示,逻辑或关系用符号“+”表示。所以,与或表达式也称为积之和(Sum Of Product, SOP)表达式,或与表达式也称为和之积(Product Of Sum, POS)表达式。
1.“与或”表达式
“与或”表达式指由若干“与”项进行“或”运算构成的表达式。每个“与”项可以是单个变量的原变量或者反变量,也可以由多个原变量或者反变量相“与”组成。例如, AB、 、 均为“与”项。“与”项又被称为“乘积”项。将这3个“与”项相“或”便可构成一个3变量函数的“与或”表达式,表示为
用真值表准确地表示“与或”表达式,如表1.20所示。对于SOP表达式来说:
(1)对于包含3个输入变量A、B和C的真值表,可以使用3输入变量的逻辑与门。对于真值表中,Y输出为“1”的每一行,要求一个3输入的逻辑与门。
(2)如果该行中的某个输入变量输入为“0”,表示对该输入变量取反。
(3)所有的逻辑“与”项连接到具有一个M个输入的逻辑或门(M为Y输出为“1”的行的个数,此处M=3)。
(4)逻辑或门的输出是该逻辑函数的输出。
所以,Y的输出用下面的逻辑等式表示:
表1.20 由3个变量构成“与或”表达式的真值表(1)
2.“或与”表达式
“或与”是指由若干“或”项进行“与”运算构成的表达式。每个“或”项可以是单个变量的原变量或者反变量,也可以由多个原变量或者反变量相“或”组成。例如,A+B、B+C、 、D均为“或”项。将这4个“或”项相“与”便可构成一个4变量函数的“或与”表达式,表示为
用真值表准确地表示“或与”表达式,如表1.21所示。对于POS表达式来说:
表1.21 由3个变量构成“或与”表达式的真值表(2)
(1)对于包含3个输入变量A、B和C的真值表,可以使用3输入变量的逻辑或门。在真值表中,Y输出为“0”的每一行,要求一个3输入的逻辑或门。
(2)如果该行的某个变量输入为“1”,则表示对该输入取反。
(3)所有的逻辑“或”项连接到一个具有M输入的逻辑与门(M为Y输出为“0”的行的个数,此处M=5)。
(4)逻辑与门的输出是该逻辑函数的输出。
所以,最后Y的输出用下面的逻辑等式表示:
通常,逻辑函数表达式可以表示成任意的混合形式,例如:
该逻辑函数既不是“与或”式,也不是“或与”式。但不论什么形式,都可以变换成SOP或者POS这两种最基本的形式。
在上面的SOP表达式中,每个乘积项包含所有3个输入变量。同样,在POS表达式中,每个和项包含所有3个输入变量。包含3个输入变量的乘积项称为最小项,包含3个输入变量的和项称为最大项。如果将一个给定行上的输入“1”或者“0”当作一个二进制数,则最大项或者最小项的数字可以分配到真值表中的每一行。因此,上面的SOP 等式包含最小项1、3和5; POS等式包含最大项0、2、4、6和7。在SOP 等式内的最小项中,输入变量为“1”表示取输入变量的原值,而输入变量为“0”表示对该输入变量取反。如表1.22所示,为上面的真值表加入完整的最小项和最大项。
表1.22 用最小项和最大项表示
对最小项和最大项编码,这样将SOP和POS等式用简化方式表示。SOP 等式使用符号∑表示,表示乘积项求和;POS 等式使用符号∏表示,表示和项求积。真值表内输出为“1”的一行定义了最小项,输出为“0”的一行定义了最大项。下面给出使用最小项和最大项的简单表示方法:
思考与练习1-25: 请画出下面等式所表示的逻辑电路。
思考与练习1-26: 请画出下面等式所表示的逻辑电路。