我无法确定Q1和Q2的布尔方程。我所做的是将值输入到卡诺图中。但由于状态图只包含3个状态(00,01和11),我有点不确定如何设置卡诺。我知道如果它有四个状态(如00,01,11和10)会是什么样的。
这就是我的卡诺看起来的样子,虽然可能是错的
编辑:我应该在我的卡诺添加最后一行(10)而只是输入不关心吗?
答案 0 :(得分:1)
我想说,K-map作为草稿是好的,但我建议制作每个输出变量("新" Q_1
和Q_0
in状态图的下一步)他们自己的K-map。
通过这种方式,您可以分别为每个功能最小化功能。
我用这种方式填写了真值表:
+-----------------++-----------+
input variables || next state
+-----+-----+-----++-----+-----+
| Q_1 | Q_0 | x || Y_1 | Y_0 |
+-----+-----+-----++-----+-----+
| 0 | 0 | 0 || 0 | 1 |
| 0 | 0 | 1 || 0 | 0 |
| 0 | 1 | 0 || 0 | 0 |
| 0 | 1 | 1 || 1 | 1 |
+-----+-----+-----++-----+-----+
| 1 | 0 | 0 || X | X |
| 1 | 0 | 1 || X | X |
| 1 | 1 | 0 || 0 | 0 |
| 1 | 1 | 1 || 1 | 1 |
+-----+-----+-----++-----+-----+
输出功能确定下一个状态(Y_1
为"新"下一个Q_1
,Y_0
为" new" next Q_0
)是:
由于变量的顺序,卡诺图中的索引与真值表的行相对应。
另外请注意,我使用的是“不关心”' X输出(对于10
状态)有利于最小化第二个函数(Q_0
)。
机器应该(理论上)永远不要去关心'因此,您不必担心在函数中使用它。
如果不绕X
Y_0
{{}}},Y_0 = ¬x·¬Q_1·¬Q_0 + x·Q_0
函数会更长:X
。使用Y_0 = ¬x·¬Q_0 + x·Q_0
只有:SELECT a.*
FROM a
LEFT JOIN b ON b.fk = a.pk
WHERE b.fk IS NULL
。
如果您不清楚,请随时在评论中提出。