📜  规范和标准形式

📅  最后修改于: 2021-09-27 14:33:22             🧑  作者: Mango

规范形式 –在布尔代数中,布尔函数可以表示为称为minterm 的规范析取范式,有些则表示为称为maxterm 的规范合取范式。
在 Minterm 中,我们寻找输出结果为“1”的函数,而在 Maxterm 中,我们寻找输出结果为“0”的函数。
我们执行minterm 的总和,也称为乘积总和 (SOP)。
我们执行Maxterm 的乘积,也称为总和的乘积 (POS)。
表示为 minterms 的总和或 maxterms 的乘积的布尔函数被称为规范形式。

标准形式——布尔变量可以以真形式或补形式表示。在标准形式中,布尔函数将包含真实形式或补充形式的所有变量,而在标准形式中,变量的数量取决于 SOP 或 POS 的输出。

布尔函数可以从给定的真值表中通过形成一个 来代数表示:

  • minterm 用于在函数中产生 1 的变量的每个组合,然后对所有这些项进行 OR 运算。
  • maxterm 用于在函数中产生 0 的变量的每个组合,然后对所有这些项进行 AND 运算。

代表 minterm 和 maxterm 的真值表 –

从上表可以看出,minterm 是用乘积格式表示的,maxterm 是用sum 格式表示的。

最小项的总和 –
该小项,其总和定义布尔函数是那些给予1层的函数的真值表。由于对于每个最小项,该函数可以是 1 或 0,并且由于有 2^n 个最小项,因此可以计算出可以由 n 个变量组成的所有函数为 (2^(2^n))。有时以最小项的总和形式表达布尔函数会很方便。

  • 示例 –将布尔函数F = A + B’C 表示为最小项的标准和。
  • 解决方案 –
    A = A(B + B’) = AB + AB’
    这个函数还缺少一个变量,所以
    A = AB(C + C’) + AB'(C + C’) = ABC + ABC’+ AB’C + AB’C’
    第二项 B’C 缺少一个变量;因此,
    B’C = B’C(A + A’) = AB’C + A’B’C
    结合所有术语,我们有
    F = A + B’C = ABC + ABC’ + AB’C + AB’C’ + AB’C + A’B’C
    但是 AB’C 出现了两次,并且
    根据定理 1 (x + x = x),可以删除这些事件之一。按升序重新排列最小项,我们最终得到
    F = A’B’C + AB’C’ + AB’C + ABC’ + ABC
    = m1 + m4 + m5 + m6 + m7
    SOP 表示为 Sigma(1, 4, 5, 6, 7)
    • 示例 –将布尔函数F = xy + x’z 表示为 maxterms 的乘积
    • 解决方案 –
      F = xy + x’z
      = (xy + x’)(xy + z)
      = (x + x’)(y + x’)(x + z)(y + z)
      = (x’ + y)(x + z)(y + z)
      x’ + y = x’ + y + zz’
      = (x’+ y + z)(x’ + y + z’) x + z
      = x + z + yy’
      = (x + y + z)(x + y’ + z) y + z
      = y + z + xx’
      = (x + y + z)(x’ + y + z)
      F = (x + y + z)(x + y’ + z)(x’ + y + z)(x’ + y + z’)
      = M0*M2*M4*M5
      POS 表示为 Pi(0, 2, 4, 5)
      • 例子 –

        F(A, B, C) = Sigma(1, 4, 5, 6, 7)
        F'(A, B, C) = Sigma(0, 2, 3) = m0 + m2 + m3
        现在,如果我们通过 DeMorgan 定理取 F’ 的补码,我们将获得不同形式的 F:
        F = (m0 + m2 + m3)’
        = m0’m2’m3′
        = M0*M2*M3
        = PI(0, 2, 3)

    • 示例 –转换标准形式的布尔表达式 F=y’+xz’+xyz
    • 解 – F = (x+x’)y'(z+z’)+x(y+y’)z’ +xyz
      F = xy’z+ xy’z’+x’y’z+x’y’z’+ xyz’+xy’z’+xyz