卡诺图一学就会

卡诺图 K-map 一学就会

本文大概需要认真看 10 分钟,你就一定会搞懂卡诺图~ 来把,释放你的耐心!看起来!

卡诺图(K-map) 是一种布尔等式的化简方式,由布尔实验室的电信工程师莫里斯卡诺 Maurice Karnaugh 于 1953 年发明的。
以下的例子均来自 《Digital+Design+and+Computer+Architecture,+Second+Editio》这本书。

首先来看下面这个真值表
卡诺图一学就会_第1张图片

先把真值表写成卡诺图的形式, AB 的四种变化 00 01 11 10 写在最上面的行中,C 的两种变化写在最左面的列上。
K-map 使用起来是比较方便的。首先想想这张图是贴在之个球上,我想表达的就是想想最上面的红色的边其实也是最下面蓝色的边,
最左面绿色的边其实也是最右边黑色的边。这有点像小时侯玩过的“打砖块”游戏,接球的板子移到了屏幕的最右边之后再向右移动
就会从屏幕左边冒出来。
卡诺图一学就会_第2张图片

我这种比喻为贴在球上的说法也就是书中的 “wraps around” 。然后就是在 K-map 上画矩形的圈(其实在都是方格的K-map上也很难画出别的形状),
圈住所有为 1 的格子。此外画这个矩形的圈还有六个需要注意的规则:

  1. 要花尽量少的矩形圈,使其圈住全部的 1 的格子。
  2. 所有的圈里面必须都要值是 1 的,不能出现值为 0 的格子。
  3. 圈中 1 的格子的数量要是 2 的指数,也就是(1, 2, 4, 8等等)。
  4. 圈要尽可能的大(这一条其实有点像 规则 1)。
  5. 圈是可以超过 K-map 的边界的,最右(上)边和最左(下)边是可以出现在同一个格子中,这条想想上面的比喻就能很好理解,毕竟是贴在球上嘛。
  6. 同一个 1 的格子是可以出现在多个圈中的。

先来看一个简单的例子,利用上面的规则就可以画出下面图中矩形的圈(忽略这个矩形的圆边)。
卡诺图一学就会_第3张图片
这个时候来看这个矩形对应的 AB 与 C。能看出 AB 一直都是 00,C 进行了变化上面行对应的 C 的值是 0 而下面行对应的 C 是 1。
也就是说 C 的变化并不对结果产生影响,所以直接可以写出化简的结果。
A ‾ B ‾ \overline{A} \overline{B} AB

现在我们来用布尔代数公式验证一下简化结果

在这里插入图片描述
看到这里是不是感觉很简单呢~

OK!让我们稍微增加一些难度

看下面这个 K-map

卡诺图一学就会_第4张图片

利用上面提到过对 K-map 画圈的方式…… 想一下~ 聪明的你一定会得出下面的形式:

卡诺图一学就会_第5张图片

好的,稍微解释一下这个结果是怎么从圈里面读出来的。
最右边的半个圈是和左边半个圈连在一起的,从圈里可以看出 A 和 C 的值出现了变化(圈里 1 对应的 A 和 C 即有 0 又有 1) 。只剩下 B 的值没有出现变化,而且一直是 0 所以记作 非B。 还有一个圈,圈中了第一行右边的两个格子。同样,这两个格子对应的 B 出现了变化,而 A 和 C 没有出现变化, C 一直是 0 所以记作 非C, A 一直是 1 所以记作 A。 这样就得出了简化后的结果啦~

在这里插入图片描述

你可能感兴趣的:(digital,electronic,数字电路,数电)