計算機硬體基礎:邏輯閘
1854 年,英國數學家 喬治·布林 開發了布林代數。與使用數字的代數不同,布林代數使用真值,即 **真** (1) 和 **假** (0)。透過使用真值定義句子並對這些真值執行運算,您可以計算出複雜語句的總體結論。布林代數對計算機科學產生了巨大影響,計算機理解的語言是一種 1 和 0 的語言,即布林語言。
|
|
|||||||||||||||||||||||||||||||||||||||||
邏輯閘是執行布林輸入運算的硬體部件,使我們能夠使用抽象的布林代數建立複雜裝置。邏輯閘是硬體的基本構建塊,處理器將由數十億個邏輯閘組成。邏輯閘通常有一個或兩個輸入,在下面的示例中,它們由 A 和 B 定義。你需要了解六種型別的門
-
非門(NOT)
-
與門(AND)
-
或門(OR)
-
異或門(XOR)
-
與非門(NAND)
-
或非門(NOR)

非門 始終輸出與輸入相反的值,例如 1(非門)0。非門接收一個布林輸入並將其翻轉。可以進行雙重否定。這將反轉原始否定。符號將在其上有一個額外的橫線。
在布林代數中,我們透過在字母 () 或字母 () 上方放置橫線來編寫 非門 符號。
|
以下是工作中的非門的示例
|
總而言之,這是一個顯示 A 和 之間關係的真值表
| A | |
|---|---|
| 0 | 1 |
| 1 | 0 |

與門 將組合兩個輸入的布林值(可以獲得兩個以上的輸入,但我們不需要了解這裡那種型別的門)。當且僅當 **兩個輸入都為真** 時,它才會輸出真。如果任何輸入為假,它將輸出假。
在布林代數中,我們透過在兩個 () 或更多 () 值之間放置一個點來編寫 與門 符號。
|
以下是工作中的與門的示例
|
記住 AND 門工作原理的一個簡單方法是把它想象成一個點亮燈泡的電路。如果兩個開關都開啟,燈泡就會亮;如果任何一個開關關閉,燈泡就不會亮。

總結一下,下面是一個真值表,顯示了兩個輸入 A 和 B 的所有不同值以及將這些值 AND 運算後的結果。
| A | B | A.B |
|---|---|---|
| 0 | 0 | |
| 0 | 1 | |
| 1 | 0 | |
| 1 | 1 |
OR (+)
[edit | edit source]
OR 門將組合兩個輸入的布林值。如果一個或多個輸入為真,則輸出為真。如果兩個輸入都為假,則輸出為假。
在布林代數中,我們透過在兩個 () 或多個 () 值之間放置一個加號來表示 OR 符號。
|
以下是一些 OR 門工作示例:
|
記住 OR 門工作原理的一個簡單方法是把它想象成一個點亮燈泡的電路。如果一個或多個開關開啟,燈泡就會亮;如果兩個開關都關閉,燈泡就不會亮。

總結一下,下面是一個真值表,顯示了兩個輸入 A 和 B 的所有不同值以及將這些值 OR 運算後的結果。
| A | B | A+B |
|---|---|---|
| 0 | 0 | |
| 0 | 1 | |
| 1 | 0 | |
| 1 | 1 |
XOR ()
[edit | edit source]
異或,XOR,門將組合兩個輸入的布林值。如果只有一個輸入為真,則輸出為真。如果兩個輸入都為假或兩個輸入都為真,則輸出為假。
在布林代數中,我們透過在兩個 () 或多個 () 值之間放置一個帶圓圈的加號來表示 XOR 符號。
|
以下是一些 XOR 門工作示例:
|
為了總結,這裡是一個真值表,顯示了兩個輸入 A 和 B 的所有不同值以及將這些值異或在一起的結果
| A | B | |
|---|---|---|
| 0 | 0 | |
| 0 | 1 | |
| 1 | 0 | |
| 1 | 1 |
與非門(NAND)
[edit | edit source]
一個與非門將組合兩個輸入的布林值,將它們與在一起,然後對結果取反。如果一個或更少輸入為真,那麼輸出將為真。如果兩個輸入都為真,那麼輸出將為假。要繪製一個與非門,您需要繪製一個與門並在前面新增一個圓圈,如上所示。
在布林代數中,我們透過取一個與方程並對結果取反來寫一個與非符號 ().
|
以下是一些與非門工作的示例
|
為了總結,這裡是一個真值表,顯示了兩個輸入 A 和 B 的所有不同值以及將這些值與非在一起的結果
| A | B | ||
|---|---|---|---|
| 0 | 0 | 0 | |
| 0 | 1 | 0 | |
| 1 | 0 | 0 | |
| 1 | 1 | 1 |
或非門(NOR)
[edit | edit source]
一個或非門將組合兩個輸入的布林值,將它們或在一起,然後對結果取反。如果沒有輸入為真,那麼輸出將為真。如果一個或兩個輸入為真,那麼結果將為假。要繪製一個或非門,您需要繪製一個或門並在前面新增一個圓圈,如上所示。
在布林代數中,我們透過取一個或方程並對結果取反來寫一個或非符號 ().
|
以下是一些或非門工作的示例
|
| A | B | ||
|---|---|---|---|
| 0 | 0 | 0 | |
| 0 | 1 | 1 | |
| 1 | 0 | 1 | |
| 1 | 1 | 1 |
|
練習:邏輯閘 給出或語句的符號和門圖 給出與語句的符號和門圖 給出異或語句的符號和門圖 給出以下方程的答案 真與真 答案 真 真 + 假 答案 真 真 + 真 答案 真 真 真 答案 假 非(真) . 真 答案 假
答案 真 畫一個與非門和真值表 完成下表
|