布尔函数混淆

Boolean function confusion

我正在尝试为 F(A,B,C,D)= A’B’C’D’+AC’D’+B’CD’+A’BCD+BC’D 制作 Kmap。我有点困惑,因为并非所有变量分组都具有相同数量的变量。有些有 4 个,有些有 3 个。这等同于 F(A,B,C,D) = F(0,2,4,5,7) 吗?我不知道如果缺少变量,您是否需要做一些额外的事情。就像在第二组中一样 (AC'D') 没有 B。所以我们是否必须做一些事情来弥补缺失的术语,或者这只是 4.

我不确定这些数字 0,4,2,5,7 来自哪里,卡诺图(假设这就是您的意思)只是指定给定输入的真值输出。

如果一项 缺失, 那么它对结果没有影响,因此 两个可能值中的任何一个 都会影响真相输出。所以,本质上,以下两个表达式是相同的:

AC'D' <=> A(B)C'D' + A(B')C'D'

如果缺少 项,那么您只需考虑 多于两种可能性 (2<sup>n</sup>,其中 n 是缺失项的数量)。所以 A 也将是:

ABCD + ABCD' + ABC'D + ABC'D' + AB'CD + AB'CD' + AB'C'D + AB'C'D'

(A2<sup>3</sup> = 8 的可能性匹配 B, CD 个变量)。

因此您的特定功能的地图:

A'B'C'D' + AC'D' + B'CD' + A'BCD+BC'D

第一学期 A'B'C'D':

   AB:00 01 10 11
CD:00  T  .  .  .
   01  .  .  .  .
   10  .  .  .  .
   11  .  .  .  .

与第二项 AC'D' 或运算,等价于 ABC'D + AB'C'D:

   AB:00 01 10 11
CD:00  .  .  T  T
   01  .  .  .  .
   10  .  .  .  .
   11  .  .  .  .

与第三项 B'CD' 或,扩展为 AB'CD + A'B'CD:

   AB:00 01 10 11
CD:00  .  .  .  .
   01  .  .  .  .
   10  T  .  T  .
   11  .  .  .  .

最后,与第四项 BC'D 进行或运算,等于 ABC'D + A'BC'D:

   AB:00 01 10 11
CD:00  .  .  .  .
   01  .  T  .  T
   10  .  .  .  .
   11  .  .  .  .

将所有这些结合起来得到:

   AB:00 01 10 11
CD:00  T  .  T  T
   01  .  T  .  T
   10  T  .  T  .
   11  .  .  .  .

具有 3 个变量的项仅表示它覆盖卡诺图中的 2 个单元格。

  AB  00  01  11  10
CD
00    XX      YYYYYY
01
11
10

所以 XX 是 A'B'C'D',YYYYYY 是 AC'D'。 AC'D'中的重点是B的值是无关紧要的,所以可以是1也可以是0,所以有2个单元格。

祝你好运

缺少变量的地方调用don't care条件。如果你正在为表达式做一个真值 table,你不关心变量是否可以根据 reduce 表达式同时取 0 或 1。或为他们使用 X(交叉)