第2节 布尔代数
也许在最简化逻辑等式的所有方法中,布尔代数法是最古老的方法了。它提供了一种正式的代数法则系统并可以用来处理逻辑等式,以及找出更为简化的等式。该代数系统包括有三个元素集合‘0’‘1’‘A’(其中A是值为0 或1 的任何变量),两个二进制操作符(与运算或交叉运算,或运算或合并运算),还有一个一元操作(翻转或取补运算)。集合元素之间的操作仅限于三种操作。与、或、非的基本运算法则可以从真值表中得到。合并律、交换律以及分配律也可以直接用真值表来表示。下表的真值表只是分配律的真值表。表示简单的合并律和交换律的真值表没有给出,但读者也可以轻松的画出。

与运算的优先级要高于或运算。优先级的使用可以消除任何可能的歧义。因此,下面两个等式其实每个都是等同的

摩尔定律通过对其性质的观察,为门符号的变换提供了公式化代数表示:根据输入输出电平的特性,相同路基电路既可以用与门表示,也可以用或门表示。任何数量输入以及状态的逻辑电路都适用于摩尔定律。

布尔代数法则通常都使用异或运算,除了摩尔定律是使用其它不同的方式。回顾以前的章节,我们知道当有奇数个输入信号有效时,异或的输出信号有效。当有偶数个输入信号有效时,异或非的输出信号有效。还有,对异或其中一个输入信号的翻转,或是翻转其输出信号,都会产生异或非的输出。类似的,对异或非其中一个输入信号的翻转,或是翻转其输出信号,那么也会产生异或输出。同时翻转一个输入和其输出,或是翻转两个输入,会改变其功能输出,从异或到异或飞,或从异或非到异或。这一特性使得可以用任何输入数量的异或运算来表达摩尔定律:

注意,多输入的异或电路中,一个输入的翻转可以被转移到其它任何输入上去,而并不改变其逻辑输出结果。同时也是要注意,任何信号翻转都可以用异或非运算和一个不翻转的信号来代替。这一性质在后面的讨论中将非常重要。
下面的电路也阐明了布尔代数定律。

下面的例子中,我们将讨论如何使用布尔代数来找到更简化的逻辑等式。

左边最后两个例子(蓝框内的)就表示了有时称为“吸收”定律的逻辑关系,右边的例子(绿框内的)表示的是所谓的“一致性”定律。所谓的吸收定律可以用其它定律来表示,所以使用它来作为逻辑关系定律不是很必要,也不是很方便。尤其是不同形式的等式会很难确定是否合适应用该定律。一致性定律很容易写出来,在与门上加一个“1”,然后将“1”扩展为一个或运算,并仍与原与门相与(如果不是很明显,一般都需要这个“1”)。


