如何从组合表达式中确定 sop 和 pos 部分

How can I determine the sop and pos part from a combined expression

提问人:Mohit 提问时间:11/2/2022 最后编辑:CœurMohit 更新时间:11/11/2022 访问量:81

问:

F(A, B, C, D) = (D′ + AB′)(AD + C′)B′ + BD′(A′ + C′) + A′

就像这个组合表达式一样,SOP和POS都可用,我怎么知道哪些是sop,哪些是pos?

我试图从这个组合表达式中找到 sop 和 pos,但我不能。我们知道 (D′ + AB′)(AD + C′) 它是一个 pos 函数,它是一个 D′A + AB′ sop 函数。但是我不明白如何从组合表达式中找到两个 sop pos 都可用的地方。

布尔表达式 数字逻辑

评论


答:

0赞 Axel Kemper 11/4/2022 #1

要将表达式确定为乘积总和,可以重写它:F

F(A, B, C, D) = (D' + AB')(AD + C')B' + BD'(A' + C') + A'
              = (ADD' + C'D' + AAB'D + AB'C')B' + (A'BD' + BC'D') + A'
              = (AB' + B'C'D' + AB'D + AB'C) + (A'BD' + BC'D') + A'
              = C'D' + B'D + A'

结果是产品的总和。

真值表:

A  B  C  D  |  F
------------+------
0  0  0  0  |  1
0  0  0  1  |  1
0  0  1  0  |  1
0  0  1  1  |  1
0  1  0  0  |  1
0  1  0  1  |  1
0  1  1  0  |  1
0  1  1  1  |  1
1  0  0  0  |  1
1  0  0  1  |  1
1  0  1  0  |  0
1  0  1  1  |  1
1  1  0  0  |  1
1  1  0  1  |  0
1  1  1  0  |  0
1  1  1  1  |  0
------------+-------

每一行都对应一个minterm,即输入(反转或非反转)的乘积。因此,真值表给出了乘积总和形式。F=1

要获得求和乘积形式,您可以取四行并反转输入(参见德摩根定律):F=0

  A  B  C  D  |
--------------+------
  1  0  1  0  |  0
  1  1  0  1  |  0
  1  1  1  0  |  0
  1  1  1  1  |  0
--------------+------
        
  (A'+B+C'+D)(A'+B'+C+D')(A'+B'+C'+D)(A'+B'+C'+D')

评论

0赞 Andrew 11/11/2022
请解释最后的“重写”;
0赞 Andrew 11/11/2022 #2
(D'              + AB')(AD + C')B'  + BD'(A' +    C') + A'
 D'ADB' + D'C'B' + AB'ADB' + AB'C'B' + BD'A' + BD'C'  + A'  distributive law
 D'ADB' + D'C'B' + AB'ADB' + AB'C'B'         + BD'C'  + A'  absorptive law
 D'ADB' + D'C'B' + AB'D    + AB'C'           + BD'C'  + A'  idempotent law
 0 A B' + D'C'B' + AB'D    + AB'C'           + BD'C'  + A'  complement law
 0      + D'C'B' + AB'D    + AB'C'           + BD'C'  + A'  annulment law
          D'C'B' + AB'D    + AB'C'           + BD'C'  + A'  identity law
          D'C'B'           +  B'D    +  B'C' + BD'C'  + A'  absorptive law  
          B'C'D' + BC'D'   +  B'D    +  B'C'          + A'  commutative law 
            C'D'(B' + B)   +  B'D    +  B'C'          + A'  distributive law  
            C'D'1          +  B'D    +  B'C'          + A'  complement law
            C'D'           +  B'D    +  B'C'          + A'  identity law
            C'D'           +  B'D                     + A'  kmap reduction
(populating kmap in above order, B'C' is alreay included when we get to it)

kmap
BC\D  0 1
00    1 1
01    0 1
11    0 0
10    1 0