《计算机组成与体系结构(原书第4版)》 —3.2.4 求反

举报
华章计算机 发表于 2019/11/19 17:32:30 2019/11/19
【摘要】 本节书摘来自华章计算机《计算机组成与体系结构(原书第4版)》一书中第3章,第3.2.4节,作者是[美] 琳达·纳尔(Linda Null)朱莉娅·洛博(Julia Lobur)宾夕法尼亚州立大学,张 钢 魏继增 李雪威天津大学 李春阁 何 颖天津大学仁爱学院 译。

3.2.4 求反

正如在例3.1中看到的,布尔定律不仅仅可以应用到简单的布尔变量(把x和y看作布尔变量并应用幂等律),还可以应用到布尔表达式中。这同样适用于布尔运算符。应用于更复杂布尔表达式中的最常见的布尔运算符是NOT运算符,它表示对表达式求反。很多时候,更容易求出一个函数的反而不是函数本身。如果进行反运算,则必须反转最终输出以得到原来的函数。用一个简单的NOT运算就能完成。因此,求反运算是非常有用的。

用德摩根定律可以找到一个布尔函数的反。该定律的或形式规定(x+y)′=x′y′。可以很容易将其扩展到3个或更多的变量中:

假设函数为:

F(x,y,z)=(x+y+z),于是F′(x,y,z)=(x+y+z)′。设w=(x+y),则F′(x,y,z)=(w+z)′=w′z′。

现在,再次应用德摩根定律得到:w′z′=(x+y)′z′=x′y′z′=F′(x,y,z)

因此,如果F(x,y,z)=(x+y+z),则F′(x,y,z)=x′y′z′。应用对偶原理,得到(xyz)′=x′+y′+z′。

看来,要想找到一个布尔表达式的反,可简单地用它的反(x用x′代替)并交换AND和OR运算。事实上,这正是德摩根定律所阐述的。例如x′+yz′的反是x(y′+z),必须添加括号以确保正确的优先级。

可以验证,通过这种简单规则寻找到的布尔表达式的反是正确的,可以通过真值表检查表达式和它的反。当任何表达式的反表示为真值表时,输出为0时原函数值为1,输出为1时原函数值为0。表3-7描绘了F(x,y,z)=x′+yz′函数和它的反F′(x,y,z)=x(y′+z)表示,阴影部分指示F和F′的最终结果。

表3-7 一个函数和它的反的真值表

image.png


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200