总和乘积之和的乘积



(A+B+C+D')(B+C'+D)(A +C)(A+C)

这是我必须转换为乘积总和的表达式。

我得到了(A'B'C'D)+(B'CD')+(A'C')+(A'C')

真的不确定我是否正确...如果我是,我可以组合 (A'C') 并写成 2(A'C')吗?

请帮忙

这里的 + 表示 ORing,. 表示 ANDing 操作。(A'C')+(A'C') 表示 A 的补码与 C 的补码进行 AND,而 C 补码与 C 补码的 AND 相加

正如Ashis所说,(A'C')+(A'C')只是(A'C')。

要简化表达式,请使用 Karnaugh 地图(请参阅 http://en.wikipedia.org/wiki/Karnaugh_map)。

要检查您的答案,请将其真值表与原始表达式进行比较。例如,在千里马,

(%i1) load(logic)$
(%i2) orig : (A or B or C or (not D)) and 
       (B or (not C) or D) and 
       (A or C)  and (A or C)$
(%i3) your_answer: ((not A) and (not B) and (not C ) and D) or
       ((not B) and C and (not D)) or
       ((not A) and (not C)) or
       ((not A) and (not C))$
(%i4) logic_equiv(orig,your_answer);
(%o4) false
(%i5) characteristic_vector(orig);
(%o5) [false,false,false,true,false,false,true,true,true,true,false,true,true
        ,true,true,true]
(%i6) characteristic_vector(your_answer);
(%o6) [true,true,true,false,true,true,false,false,false,false,true,false,
        false,false,false,false]

或者,仅对于一种情况,

(%i7) orig, A=true, B=true, C=true, D=true;
(%o7) true
(%i8) your_answer, A=true, B=true, C=true, D=true;
(%o8) false

最新更新