數位邏輯電路硬體,能夠執行邏輯函數運算,以下我們先介紹何謂數位邏輯,再介紹IC電路及其使用。
邏輯函數,其符號,布林代數方程式,與真值表True Table
邏輯運算的方程式為布林代數方程式。下表為邏輯函數運算,邏輯符號,布林代數方程式,以及真值表。依邏輯函數名稱由上到下分別是AND GATE及閘,OR GATE 或閘,Inverter 反向閘,NAND GATE反及閘,NOR GATE反或閘,XOR 除餘及閘,XNOR 反除餘及閘。由左到右分別為Logic Function邏輯函數,Logic Symbor 邏輯符號,Boolean Expression布林代數式, True Table,真值表。
邏輯符號左邊短線為輸入訊號接腳,右邊短線代表輸出訊號。布林代表式,等式右邊為輸出結果,左邊為輸入訊號。
『·』點號表示『及AND』 運算,用乘法來記憶會比較容易1乘1為1,1乘0為零,0乘0為0。
『+』加號表示『或OR』運算,以0非0值相加比較容易理解,只有都是0相加,才維持0,兩者只要有一為非0相加即非0。
『 bar A』是在原值上加一橫即『反Invert』運算。本來0變1,本來 1變0。
『⊕』圓內加號表示『除全1或,XOR』運算XOR是平常比較沒有常識可用的新邏輯,與一般的OR不同的是,在OR中,輸入兩者只要有一個是1,結果就是1這是邏輯的基本常識,但對XOR而言,他是輸入兩者只要有一個1結果就是1,除了兩者都是1以外。也就是說1 XOR 1得到不是1而是0,它的符號很特別是加號被零圍起來,最右邊真值表每一行表示各種不同輸入組合得到的輸出值,用二進位制加法取其餘數來看比較容易理解,進位制1加1等於2,因為到2即進位餘0,所以1加1為0。
每顆IC的外表都一樣,是一顆矩型四方體大部份是黑色,並在矩型的長邊長出一些金屬接腳,但是每一顆IC的內容可能會有很大的不同,而每一隻接腳也一樣的外觀相同,內容郤大不同。要分辨不同的IC,所靠的是印記標示在IC表面的型號,例如下圖照片中,有一顆7408,一顆74LS08,他們前面標示的DM,SN為製造廠商的代碼,7408,74LS08為型號,在邏輯上兩者是相同的,但加了LS代表的是低耗電肖基特(Schottky),一種特殊設計法可以提高反應速度。最個的N,J英文母代表的是,包裝方式。不論何種IC,因為包裝是上下左右對稱,要分出那支腳是第一腳會有一些困難,所以所有製造商都會在IC的一端包裝上做標記,如缺角,壓個圓或是凹陷,凡有記號的一端都是上端。
當我們把IC上端向上時,其左手邊最上面一個腳為第1支腳,並依逆時鐘方向編腳號。以下為本次實驗用到的NOT GATE7404以及NAND GATE 7400。
左邊為NOT GATE 7404,右邊為NAND GATE 7400
在使用IC時,由於IC是一個主動元件,需要有電源供應,因此需要提供電源,以及接地,對邏輯數位ID而言其電源是5V。除此之外在IC的電源與接地之間需要跨接一個旁路電容,常用的容值是0.01~0.1μF,可用陶磁電容。另外,麵包板的電源與地之間也要有一大電容,約1~10μF,可用電解質電容。在完成電源接線之後,即可執行IC邏輯輸出入的配線,將輸入接腳接到前級邏輯電路的輸出,把邏輯輸出的接腳接到後級的輸入接腳。如此一級一級即可將多種不同邏輯IC逐級組合成所要的邏輯電路。
快要完成了!
我們剛剛發給你了一封電郵。 請點擊電郵中的鏈接確認你的訂閱。
好的
在數學和數理邏輯中,邏輯代數(有時也稱開關代數、布爾代數)是代數的一個分支,其變量的值僅為真和假兩種真值(通常記作 1 和 0)。初等代數中變量的值是數字,而且主要的運算是加法、乘法和乘方(以及它們的逆運算),而邏輯代數的主要運算有合取與,記為∧;析取或 ,記為∨;否定非 ,記為¬ 。因此,它是以普通代數描述數字關係相同的方式來描述邏輯關係的形式主義。
邏輯代數是喬治·布爾(George Boole)在他的第一本書《邏輯的數學分析》(1847年)中引入的,並在他的《思想規律的研究》(1854年)中更充分的提出了邏輯代數。[1] 根據Huntington「布爾代數」這個術語,最初是由Sheffer於1913年提出。[2]
邏輯代數一直是數字電路設計的基礎,並且所有現代程式語言提供支持。它也用在集合論和統計學中。 [3]
邏輯代數中的幾個概念[編輯]
參與邏輯運算的變量叫邏輯變量,用字母A,B……表示。每個變量的取值非0 即1。 0、1不表示數的大小,而是代表兩種不同的邏輯狀態。
正、負邏輯規定:
- 正邏輯體制規定:高電平為邏輯1,低電平為邏輯0。
- 負邏輯體制規定:低電平為邏輯1,高電平為邏輯0。
邏輯函數:如果有若干個邏輯變量(如A、B、C、D)按與、或、非三種基本運算組合在一起,得到一個表達式L。對邏輯變量的任意一組取值(如0000、0001、0010)L有唯一的值與之對應,則稱L為邏輯函數。邏輯變量A、B、C、D的邏輯函數記為:L=f(A、B、C、D)
邏輯運算[編輯]
基本運算[編輯]
邏輯代數的基本運算如下。
- 與(合取),記作 x∧y(有時記作 x AND y 或 Kxy),在 x = y = 1 情況下,滿足 x∧y = 1;其他情況下 x∧y = 0。
- 或(析取), 記作 x∨y(有時記作 x OR y 或 Axy),在 x = y = 0 情況下,滿足 x∨y = 0;其他情況下 x∨y = 1。
- 非 (否定), 記作 ¬x(有時記作 NOT x, Nx 或 !x),在 x = 1 情況下,滿足 ¬x = 0;而在 ¬x = 1 情況下,x = 0。
如果把真值0和1解釋為整數,這些運算可以表示為普通算數運算:
此外可以用製作真值表來表示 x∧y, x∨y 和 ¬x 的值:
有人可能會認為,只有否定和另外兩種運算之一是基本的,因為用下列性質可以用邏輯否和邏輯或來定義邏輯與,反之亦然:
衍生運算[編輯]
上述三個邏輯運算被稱為基本的,這意味著其他邏輯運算可以以它們為基礎,由他們的複合來建立,即將這些運算組合或結合。下面是由基本運算構成的運算的例子:
這些定義產生以下真值表,其中給出了對所有四個可能的輸入,這些運算的值。
1 | 0 | 1 |
0 | 1 | 0 |
1 | 1 | 0 |
1 | 0 | 1 |
第一種運算,x → y 或 Cxy,叫做實質蘊涵。如果 x 為真,則 x → y 的值就取自 y 的值。但如果 x 為假,則 y 可以忽略;然而此運算必須返回某種真值,而且只有兩種選擇,所以返回蘊含較小的值,即真。(相干邏輯通過看作非真非假的假前提的蘊含來處理這件事。)
第二種運算,x ⊕ y 或 Jxy,叫做異或(通常縮寫為XOR)與邏輯或的區別在於邏輯或包含其類型。它排除了 x 和 y 同時為真的情形。用算術來定義就是加和之後 mod 2,就如 1 + 1 = 0.
第三種運算,異或的互補運算,是同或或邏輯等價:x ≡ y 或 Exy,當 x 與 y 值相同時為真。因此作為其互補運算,x ⊕ y 可以理解為 x ≠ y,當 x 和 y 不同時為真。它對應的 mod 2 算術為 x + y + 1。
給定兩個操作數,每個具有兩個可能的值,共有 22 = 4 種可能的輸入組合。由於每種輸出有兩種可能值,一共有 24 = 16種可能的二元邏輯運算。
運算律[編輯]
兩個主要的二元運算的符號定義為 (邏輯與)和 (邏輯或),把單一的一元運算的符號定義為 (邏輯非)。我們還使用值 0 (邏輯假)和 1 (邏輯真)。邏輯代數有下列性質:
結合律 | ||
交換律 | ||
吸收律 | ||
分配律 | ||
互補律 | ||
冪等律 | ||
有界律 | ||
0 和 1 是互補的 | ||
對偶律 | ||
對合律 |
邏輯代數的基本規則[編輯]
代入規則[編輯]
任何一個含有變量 X 的等式,如果將所有出現 X 的位置,都代之以一個邏輯函數 F,此等式仍然成立。
對偶規則[編輯]
設 F 是一個邏輯函數式,如果將 F 中的所有的 * 變成 +,+ 變成 *,0 變成 1,1 變成 0,而變量保持不變。那麼就的得到了一個邏輯函數式 F',這個 F' 就稱為 F 的對偶式。如果兩個邏輯函數 F 和 G 相等,則它們各自的對偶式 F' 和 G' 也相等。
反演規則[編輯]
當已知一個邏輯函數 F,要求 ¬F 時,只要把 F 中的所有 * 變成 +,+ 變成 *,0 變成 1,1 變成 0,原變量變成反變量,反變量變成原變量,即得 ¬F。 使用反演規則時要注意保持原函數中邏輯運算的優先順序。
邏輯函數的標準形式[編輯]
邏輯變量的邏輯與運算叫做與項,與項的邏輯或運算構成了邏輯函數的與或式,也叫做積之和式(SP form)。
邏輯變量的邏輯或運算叫做或項,或項的邏輯與運算構成了邏輯函數的或與式,也叫做和之積式(PS form)。
最小項[編輯]
對於 n 個變量的邏輯函數而言,它的與項如果包含全部 n 個變量,即每個變量以原變量或反變量的形式出現一次且只出現一次,那麼這個與項就稱為該邏輯函數的最小項。
最大項[編輯]
對於 n 個變量的邏輯函數而言,它的或項如果包含 全部n 個變量,即每個變量以原變量或反變量的形式出現一次且只出現一次,那麼這個或項就稱為該邏輯函數的最大項。
邏輯函數的化簡[編輯]
運用邏輯代數的基本公式及規則可以對邏輯函數進行變換,從而得到表達式的最簡形式。這裡所謂的最簡形式是指最簡與或式或者是最簡或與式,它們的判別標準有兩條:(1)項數最少;(2)在項數最少的條件下,項內的文字最少。
卡諾圖是遵循一定規律構成的。由於這些規律,使邏輯代數的許多特性在圖形上得到形象而直觀的體現,從而使它成為公式證明、函數化簡的有力工具。
應用[編輯]
計算機[編輯]
20世紀早期,一些電子工程師領悟到邏輯代數很像某種電子電路的行為。香農在它1937年的論文中證明了這種行為與邏輯代數等價。
幾乎所有現代通用計算機都用二值布爾邏輯做運算;也就是說它們的電路是二值布爾邏輯的物理表示。幾種表示方式:導線上電壓的高低,磁性存儲設備中磁疇的方向,打孔卡或紙帶上的洞,等等(但有些早期的計算機用了十進位電路或者機械,而不是二值邏輯電路)
當然,也可能在任意介質中編碼進2個以上的符號。比如在導線上用0,1,2,3伏特去編碼一種有4個符號的字符集,或者利用打孔卡的洞的不同大小。但實踐上,在一個很小的、高速的、低功耗的電路中噪聲是個關鍵因素。它使分辨多個可能出現的符號變得困難。所以電路設計者們選擇了高、低2種電壓而不是4種。
由於上面的原因計算機使用二值邏輯電路。最常見的計算機架構使用32或64個叫做比特的布爾值序列,比如01101000110101100101010101001011。當使用機器語言、彙編語言和某些高級語言時,程式設計師可以操作暫存器的數字結構。在暫存器中0電壓表示邏輯0,參考電壓(通常是+5伏或+3.3伏[4])表示邏輯1。這些語言同時支持數值操作和邏輯操作。這裡的「數值操作」指計算機把比特序列當作二進位數字進行加減乘除等運算。「邏輯操作」指2個比特序列之間的與或非運算,序列中每一位都與另一序列中對應位進行運算。這兩種操作之間的關鍵不同是前者有進位而後者沒有。
參見[編輯]
- 數字邏輯(數位邏輯)
- 邏輯函數(交換函數)
- 規範形式 (布爾代數)
- 邏輯閘
- 卡諾圖
參考文獻[編輯]
- ^ Boole, George. An Investigation of the Laws of Thought. Prometheus Books. 2003 [1854]. ISBN 978-1-59102-089-9.
- ^ "The name Boolean algebra (or Boolean 'algebras') for the calculus originated by Boole, extended by Schröder, and perfected by Whitehead seems to have been first suggested by Sheffer, in 1913." E. V. Huntington, "New sets of independent postulates for the algebra of logic, with special reference to Whitehead and Russell's Principia mathematica (頁面存檔備份,存於網際網路檔案館)", in Trans. Amer. Math. Soc. 35 (1933), 274-304; footnote, page 278.
- ^ Givant, Steven; Halmos, Paul. Introduction to Boolean Algebras. Undergraduate Texts in Mathematics, Springer. 2009. ISBN 978-0-387-40293-2.
- ^ Logic Levels - learn.sparkfun.com. learn.sparkfun.com. [2016-12-12]. (原始內容存檔於2021-05-07).
| |||||||
| |||||||
| |||||||
| |||||||
| |||||||
| |||||||
| |||||||
| |||||||
| |||||||
|
|