跳轉至內容

計算機硬體基礎:德摩根定律

來自華夏公益教科書,開放的書籍,開放的世界

試卷 2 - ⇑ 計算機系統基礎 ⇑

← 布林恆等式 德摩根定律 門轉換 →


德摩根定律用於簡化布林方程,以便您可以構建僅涉及一種型別門的方程,通常僅使用與非門或或非門。 這可以導致更便宜的硬體。 你需要記住兩條定律

規則 1 規則 2

記住德摩根定律的一個簡單方法是透過押韻:“打破線,改變符號”

讓我們透過建立一個真值表來證明我沒有騙你,以證明:

答案

P Q
0 0 0 1 1 1 1
0 1 1 0 1 0 0
1 0 1 0 0 1 0
1 1 1 0 0 0 0

由於第 4 列和最後一列的值對所有行都相同(涵蓋了對變數的所有可能的真值賦值),因此我們可以得出結論,這兩個表示式在邏輯上是等價的。


現在我們證明 透過相同的方法

答案

P Q
0 0 0 1 1 1 1
0 1 0 1 1 0 1
1 0 0 1 0 1 1
1 1 1 0 0 0 0

有一個相當好的具體方法可以理解這一點,用一個用兩個掛鎖鎖上的門,掛鎖 1 和掛鎖 2。

我們將使用 代表掛鎖 1 已開啟,以及 代表掛鎖 2 已開啟。

如果掛鎖 1 開啟並且掛鎖 2 開啟 (),你可以透過大門。如果掛鎖 1 鎖定或掛鎖 2 鎖定 (),你不能透過大門。

由於“你不能透過大門”與“你可以透過大門”的相反(否定)相同,並且記住

大門開啟 = 大門關閉 = 你應該能夠看到 NOT{大門開啟} =

=

示例:使用布林代數簡化布林方程

簡化以下內容:

0 0
1
1
0
1
0
0 1
1
0
0
1
0
1 0
0
1
1
1
0
1 1
0
0
0
0
1

從真值表中我們可以看到它等於 。但我們也應該知道如何使用布林恆等式來得到這個結果。讓我們試一試

  1. 使用德摩根定律:。其中 P = 且 Q =
  2. 分別對等式兩邊進行操作,並運用德摩根定律將中間的門轉換為與門
  3. 現在處理新方程的左邊 (),再次運用德摩根定律 (),並將雙重否定消去
  4. 將等式兩邊展開
  5. 根據恆等式 ,我們可以用 0 代替左邊
  6. 根據恆等式 ,我們可以忽略 0,得到
  7. 根據恆等式 ,我們可以交換值
    = 我們透過真值表計算得到的值

讓我們嘗試另一個例子

練習:化簡布林表示式

使用德摩根定律和布林恆等式化簡以下表達式。透過構建真值表檢查你的答案

答案

  1. 利用德摩根定律:
  2. 得到
  3. 利用布林代數恆等式
  4. 得到
  5. 利用布林代數恆等式
  6. 簡化得到


答案

0 0
1
1
1
1
0
0 1
1
0
0
0
1
1 0
0
1
1
0
1
1 1
0
0
1
0
1

如果你能理解,你會注意到這等同於。但我們最好用布林代數恆等式和德摩根定律來驗證我們是否得到了正確的答案。

  1. 利用德摩根定律:
  2. 分別對等式兩邊進行操作,並運用德摩根定律將中間的門轉換為與門
  3. 消除雙重否定
  4. 現在處理我們新方程的左側,再次應用德摩根定律並消除雙重否定
  5. 將等式兩邊展開
  6. 根據恆等式 ,我們可以替換左側
  7. 根據恆等式 ,我們可以忽略 1,得到
  8. 根據恆等式 ,我們可以交換值
    = 我們透過真值表計算的值

答案

0 0
0
1
1
0
0 1
1
0
1
0
1 0
1
0
0
1
1 1
1
0
1
0

如果你能理解這一點,你會注意到這等價於 。但是我們最好用布林代數恆等式和德摩根定律來確認我們得到了正確的答案。

  1. 利用德摩根定律:
  2. 分別取每一邊 (P= 以及 Q=) 並應用德摩根定律將中間門轉換為 AND
  3. 消去雙重否定:
  4. 將等式兩邊展開
  5. 根據恆等式 可以用0替換右式
  6. 根據恆等式 可以忽略0,得到
    = 用真值表計算得到的值


華夏公益教科書