《计算机组成与体系结构(原书第4版)》 —3.2.3 化简布尔表达式
3.2.3 化简布尔表达式
按照代数课学习的代数定律,能够将代数表达式10x+2y-x+3y化简为它的简单形式9x+5y。布尔定律可以用类似的方式简化布尔表达式。在下面的例子中应用这些定律。
例3.1假设有函数F(x,y)=xy+xy。假设表达式中x和y为布尔变量,使用OR的幂等律简化原始表达式为xy。因此,F(x,y)=xy+xy=xy。
例3.2对于给定函数F(x,y,z)=x′yz+x′yz′+xz,简化如下:
F(x,y,z)=x′yz+x′yz′+xz
=x′y(z+z′)+xz(分配律)
=x′y(1)+xz(逆等律)
=x′y+xz(同一律)
例3.3对于给定函数F(x,y)=y+(xy)′,简化如下:
F(x,y)=y+(xy)′
=y+(x′+y′) (德摩根定律)
=y+(y′+x′)(交换律)
=(y+y′)+x′(结合律)
=1+x′(逆等律)
=1(零律)
例3.4对于给定函数F(x,y)=(xy)′(x′+y)(y′+y),简化如下:F(x,y)=(xy)′(x′+y)(y′+y)
=(xy)′(x′+y)(1)(逆等律)
=(xy)′(x′+y)(同一律)
=(x′+y′)(x′+y)(德摩根定律)
=x′+y′y(对于与的分配律)
=x′+0(逆等律)
=x′(幂等律)
有时,简化是相当简单的,如前面例子所示。但是,使用的定律可能会非常棘手,来看下面两个例子。
例3.5对于给定函数F(x,y)=x′(x+y)+(y+x)(x+y′),简化如下:
F(x,y)=x′(x+y)+(y+x)(x+y′)
=x′(x+y)+(x+y)(x+y′)(交换律)
=x′(x+y)+(x+yy′)(对于与的分配律)
=x′(x+y)+(x+0)(逆等律)
=x′(x+y)+x(同一律)
=x′x+x′y+x(分配律)
=0+x′y+x(逆等律)
=x′y+x (同一律)
=x+x′y(交换律)
=(x+x′)(x+y)(对于与的分配律)
=1(x+y)(逆等律)
=x+y(同一律)
例3.6对于给定函数F(x,y,z)=xy+x′z+yz,简化如下:
F(x,y,z)=xy+x′z+yz
=xy+x′z+yz(1) (同一律)
=xy+x′z+yz(x+x′)(逆等律)
=xy+x′z+(yz)x+(yz)x′(分配律)
=xy+x′z+x(yz)+x′(zy)(交换律)
=xy+x′z+(xy)z+(x′z)y(两次结合律)
=xy+(xy)z+x′z+(x′z)y(交换律)
=xy(1+z)+x′z(1+y)(分配律)
=xy(1)+x′z(1)(零律)
=xy+x′z(同一律)
例3.6说明了什么是俗称的共识定理。
如何插入附加法则以简化例3.6中的函数?不幸的是,可以没有任何限定地使用这些定律来化简到最简布尔表达式,只是需要一些经验。后面章节会提到有一些可简化布尔表达式的其他方法。
还可以利用这些定律证明布尔等式,如例3.7所示。
例3.7证明(x+y)(x′+y)=y。(x+y)(x′+y)=xx′+xy+yx′+yy(分配律)
=0+xy+yx′+yy(逆等律)
=0+xy+yx′+y(幂等律)
=xy+yx′+y(同一律)
=yx+yx′+y(交换律)
=y(x+x′)+y(分配律)
=y(1)+y(逆等律)
=y+y(同一律)
=y(幂等律)
为了证明两个布尔表达式相等,可以创建真值表进行比较。如果真值表相同,则表达式相等。可以把例3.7作为一个练习来证明真值表相等。
- 点赞
- 收藏
- 关注作者
评论(0)