【数字逻辑】如何根据真值表的内容写出对应的逻辑关系式?

本文介绍了通过真值表求解逻辑表达式的两种方法。方法一基于输出为真的组合进行与或运算;方法二则从输出为假的组合出发,进行或与运算。文章以异或逻辑为例,详细解释了每一步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    【2018.6.2】今天在看书的时候无意中需要使用到如题所示的知识,但是由于上次看数字逻辑这本书已经是N年前的事情了,所以又有点忘记了,现在趁着刚刚大概浏览了一次,虽然感觉不算难,但是还是记下来吧。

    据说有两种方法,这里都列举一下吧:

    方法一:

        step 1 首先,根据真值表当中结果是true的项,找出它的两个输入项,然后进行与运算;如果遇到输入项的取值是false,就需要把它写成非的形式,反之,如果输入项是true,那么就不用管,写成原来的样子就行了。

        step 2 然后,遍历整一个真值表,把所有输出值为true的项进行或运算(相加),就可以得到最原始的逻辑关系式。

        step 3 化简step 2得到的逻辑表达式即可。

    方法一的例子:以最简单的A xor B为例,下面是他们的真值表

A xor B01
0falsetrue
1truefalse

    由这个真值表可以写出如下的表达式:(!A)B + A(!B) 这条式子就等价于 A xor B 了。

    方法二:

        step 1 首先,根据真值表当中结果为false的项,找出它的两个输入项,然后进行或运算;如果遇到输入项的取值是true,就需要把它写成非的形式,反之,如果输入项是false,那么就不用管,写成原来的样子就行了。

        step 2 然后,遍历整一个真值表,把所有输出值为false的项进行与运算( · ),就可以得到最原始的逻辑关系式。

        step 3 化简step 2得到的逻辑表达式即可。

    仍然以上一个真值表为例,可以列出如下的逻辑表达式:(A+B) · (!A + !B)   ------->(*)

    对于(*)可以化简得到 (!A)B + A(!B) 即和方法一的结果一致。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值