首页 > 解决方案 > 使用步骤简化布尔表达式

问题描述

我是布尔代数的新手,而不是如何处理否定表达式,如果你能分步解释它

A'B'C'+A'B'C+A'BC+AB'C+ABC

标签: boolean-expressionboolean-algebra

解决方案


首先让我们同意表达式
A'B'C'+A'B'C+A'BC+AB'C+ABC中使用的符号:

      Notation                Bool operation      Priority  CPU instruction 
' behind Bool variable         negation            highest      NEG
two adjacent variables         logical AND          high         AND
+ between two variables        logical OR           low          OR 
( )                          priority of oper.     increased  

然后可以将您的表达式重写为

((NOT A) AND (NOT B) AND (NOT C)) OR 
((NOT A) AND (NOT B) AND (    C)) OR
((NOT A) AND (    B)     AND (C)) OR
((    A) AND (NOT B)     AND (C)) OR
((    A) AND (    B)     AND (C)) 

下一步是计算所有最内层括号的内容,例如让我们计算(NOT A)到另一个名为notA的变量。这允许摆脱一级括号:

(notaA AND notB AND notC) OR
(notA  AND notB AND    C) OR
(notA  AND    B AND    C) OR
(   A  AND notB AND    C) OR
(   A  AND    B AND    C)

重复计算,直到没有多余的括号:

notAnotBnotC OR notAnotBC OR notABC OR AnotBC OR ABC

推荐阅读