前言
邏輯代數(shù)系統(tǒng)由基本公式、常用公式识椰、基本規(guī)則三部分構(gòu)成绝葡。掌握了這些,設(shè)計出的電路可以盡可能地簡單腹鹉,減少故障幾率和元件使用;編程時敷硅,如果掌握了邏輯函數(shù)化簡功咒,也能增加條件判斷式的可讀性,避免寫出垃圾代碼绞蹦。
正文
邏輯代數(shù)中的三種基本運算
與力奋、或、非
復(fù)合邏輯運算
最常見的有與非幽七、或非景殷、與或非、異或、同或等
異或:A?B=AB′+A′BA?B=AB′+A′B
同或:A?B=AB+A′B′A?B=AB+A′B′
異或與同或互為反運算猿挚。
邏輯代數(shù)的基本公式和常用公式
基本公式
也叫布爾恒等式(證明方法包括真值表法和推演法)
正如加減乘除中存在各式運算律一樣咐旧,邏輯運算也有運算規(guī)律。本章中绩蜻,我們主要考慮與铣墨、或趴久、非運算嘱丢;異或派殷、同或的運算律可以很方便地推導(dǎo)出來衬以。我們從常量的運算開始映琳。
以上相當(dāng)于把真值表重新表達(dá)了一遍呐馆,比較直觀掩驱。
接下來浅萧,我們開始把式子抽象化降淮,把其中一個常量用變量 A 代替超埋,看看常量與變量的運算(0律與1律)
這些也很好理解,只要把常量運算公式兩兩合并就可以得到骤肛。時刻要提示自己:變量的值只有0與1兩種情況纳本。
最后,是變量間的運算腋颠,即基本運算律:
提示:在布爾運算中繁成,運算優(yōu)先級是 非 > 與 > 或
(1)交換律、結(jié)合律淑玫、分配律
這些公式基本和四則運算中的形式一樣:
特別的分配律:由于在布爾運算中巾腕,與運算和或運算常常處于可以互換的地位,因此絮蒿,我們也有 A+BC=(A+B)(A+C) 尊搬。它和與對或的分配律非常接近,只是“與”和“或”調(diào)換了而已土涝》鹗伲可以證明一下公式的正確性:
分別用了:與邏輯分配律;重疊律(見(3))但壮;與邏輯分配律逆命題冀泻;1律
(2)還原律
很直觀,變量兩次取反后回到它本身蜡饵。和語言中的“雙重否定”是一個概念弹渔。
(3)重疊律
這兩個式子比較難理解一點。但畢竟溯祸,布爾運算與四則運算中的“加法”“乘法”不是完全一致的——如果寫成 A∪A=A, A∩A=A 肢专,或者A || A == A, A && A == A 舞肆,表達(dá)的意思也是一樣的。
在學(xué)習(xí)邏輯運算時博杖,有許多迷惑性的符號——比如”0”與“1”椿胯,它們并不存在大小關(guān)系,而只是“真”與“假”的對應(yīng)關(guān)系欧募,與數(shù)字0和1無關(guān)
一道十分有趣的題目:能否通過 A + A = A 推導(dǎo)出 A = 0 压状?
不能。由于布爾運算中沒有“減法”運算跟继,因此不可以把等式兩端同時減去A种冬。這告訴我們,雖然乍一看形式十分接近舔糖,但仍然不能被算術(shù)運算中的思維誤導(dǎo)
(4)互補(bǔ)律
因為 A 與 A′ 中有且只有一個為1娱两,因此可以回到1與0的運算上來理解。
(5)德·摩根定律
讓我們一起迎接邏輯學(xué)中最著名金吗、最經(jīng)典十兢、最實用的定律:
它如此優(yōu)美,如此簡潔地表明了與邏輯和或邏輯相互轉(zhuǎn)化的關(guān)系摇庙。用非澈滴铮“數(shù)學(xué)的話”說:
并集的補(bǔ)集是補(bǔ)集的交集,交集的補(bǔ)集是補(bǔ)集的并集
或者卫袒,用實際生活中的例子來理解——
一架飛機(jī)能成功降落的前提是前后起落架均已放下宵呛,缺一不可。所以夕凝,飛機(jī)不能降落宝穗,是因為“沒有既放下前起落架又放下后起落架”,或者說是“沒有放下前起落架或者沒有放下后起落架”
此公式的用途之一是去括號码秉。初學(xué)時,常常不自覺地寫出
這樣的式子转砖。但實際上须鼎,去掉帶取反的括號時杉辙,或要變與模捂,與要變或。
還有一個用處是轉(zhuǎn)換與邏輯和或邏輯。
如果在電路設(shè)計中只能使用“或”和“非”兩種邏輯狂男,我們也照樣能表示出與邏輯—— AB=(A′+B′)′ 综看。
就比如,Minecraft游戲中便只有“或”和“非”岖食,但能夠創(chuàng)造出所有邏輯元件红碑,原理就在于此
常用公式
以上公式都比較簡單,使用時局限性也比較大泡垃。所以析珊,我們還推導(dǎo)出了一系列常用公式。它們的使用頻率要高得多(基礎(chǔ)公式中的德·摩根定律除外)蔑穴。
注意:在之前的描述中忠寻,盡量避免了出現(xiàn)“相加”“乘積”這樣的字眼,以防造成誤會存和;但為了敘述方便奕剃,接下來會經(jīng)常出現(xiàn)這些詞匯,它們不是一般意義上的“加法”“乘法”捐腿,請務(wù)必注意纵朋。
(1)吸收公式
兩項相加,且其中一項( A )是另一項( AB )的因式時茄袖,另一項中的其他因式就被吸收了操软。
證明: A+AB=A(1+B)=A
先提取公因式;再運用1律
這里一系列公式的表達(dá)都非常簡單抽象绞佩,而實際運用時寺鸥,這兩項不一定會長成A與AB的樣子,但哪怕是 A(X+Y)M′+A(X+Y)(B+C′+D)M′E′F′G 這種龐大的式子品山,只要眼光毒辣胆建,也能發(fā)現(xiàn)公因式,并化簡成 A(X+Y)M′
(2)消因子公式
兩項相加肘交,且其中一項( A )取反后是另一項( A′B )的因式時笆载,另一項中的這個相反因式就被消去了。(不要在意“吸收”“消去”這兩個詞到底有什么區(qū)別涯呻,只是為了區(qū)分這兩個公式而已)
證明: A+A′B=(A+A′)(A+B)=1?(A+B)=A+B
其中提取公因式一步比較難想到凉驻,是證明過程的重點
要注意區(qū)分吸收公式和消因子公式:一個是相同的因式,一個是相反的因式复罐;一個直接消去兩項中較大的一項涝登,一個僅僅去除部分因式
(3)并項公式
兩項相加,部分因子相等( A )效诅,剩下的互補(bǔ)( B 與 B′ )胀滚,那么可以合并成一項公有因子趟济。
證明: AB+AB′=A(B+B′)=A?1=A
(4)消項公式
這個較為復(fù)雜:三項相加,兩項中部分因子互補(bǔ)( AB 中的 A 與 A′C 中的 A′ )咽笼,剩下的都是第三項( BC )的因式(這兩項的乘積不一定要和第三項相同顷编,只需都是第三項的部分因式),那么第三項可以消去剑刑。
證明如下:
這個公式使用頻率不算很高媳纬,但它的證明用到了一種很有用的思想——引入冗余項,以進(jìn)行進(jìn)一步簡化施掏∨セ荩可以看到,證明開頭其监,逆運用并項公式萌腿,創(chuàng)造了一個新的項,隨后和另外兩項分別合并抖苦。除了這種用法毁菱,還可以利用重疊律 A=A+A ,重復(fù)寫入一項锌历,再和其他項化簡贮庞。這種方法很有用,但需要訓(xùn)練才能掌握(妙熬课鳌)窗慎。
基本規(guī)則
何謂基本規(guī)則?其實很難說清楚卤材。但大概來講遮斥,它描述了對等式進(jìn)行恒等變形的一些方法。
(1)代入規(guī)則
將邏輯函數(shù)式中任一變量(或函數(shù))用另一變量(或函數(shù))替換扇丛,等式仍成立术吗。這類似方程化簡中的“換元法”思想。
如果有方程: F(M(X,Y,Z),B,C,...)=G(M(X,Y,Z),B,C,...) 帆精,其中 F,G,M 均表示函數(shù)较屿,則可以設(shè) A=M(X,Y,Z) ,從而得到 F(A,B,C,...)=G(A,B,C,...) 卓练。
舉個例子隘蝎,之前提到,常用公式不僅僅局限于兩到三個變量的運算襟企,還可以拓展到更多變量嘱么,這可以用代入規(guī)則解釋。以消因子公式為例:如果有 (M+N)′+(M+N)XY 顽悼,則可以設(shè) A=(M+N)′, B=XY 拱撵,把式子變形成 A+A′B 辉川,然后運用公式。
(2)反演規(guī)則
回顧一下德·摩根定律: (AB)′=A′+B′, (A+B)′=A′B′ 拴测,它可以同樣通過應(yīng)用代入規(guī)則,拓展到多個變量: (ABC...)′=A′+B′+C′+..., (A+B+C+...)′=A′B′C′... 府蛇。
注意看集索,等式的左邊是一系列項的積或和,并進(jìn)行了取反汇跨,而等式的右邊則是這個反函數(shù)的展開务荆。由此,我們可以推導(dǎo)出化簡一個函數(shù)的反函數(shù)——或者叫反演——的規(guī)則穷遂。
得到函數(shù)的反演式有兩步:
- 加變乘函匕,乘變加——對應(yīng)德·摩根定律中與和或的轉(zhuǎn)換,并保證運算順序不變蚪黑;
- 對每個量取反(包括變量變?yōu)榉醋兞亢?變1盅惜,1變0),但保留非單變量的非號忌穿。
比如抒寂, ((A+B)C+0)D′?1 ,先變換符號: ((AB)+C?0)+D′+1 掠剑,再對變量逐個取反: ((A′B′)+C′?1)+D+0 屈芜,最后檢查運算順序,并通過添加去除括號調(diào)整: (A′B′+C′)?1+D+0 朴译。就這樣井佑,得到了原函數(shù)的反演函數(shù)。
(3)對偶規(guī)則
這個規(guī)則便是之前提到的“與邏輯和或邏輯常趁呤伲可以互換”的一個嚴(yán)謹(jǐn)定義躬翁。對偶式的得到也有兩步:
- 加變乘,乘變加澜公,保證運算順序不變姆另;
- 0變1,1變0坟乾。
對偶式的性質(zhì)是:若兩個邏輯式 F1=F2 成立迹辐,則它們的對偶式 F1D=F2D 也成立。比如由于 A(B+C)=AB+AC 甚侣,通過對偶變換就可以得到 A+BC=(A+B)(A+C) 明吩。
對偶規(guī)則也是由德·摩根定律推導(dǎo)而來的,具體證明過程比較復(fù)雜殷费,不再贅述印荔。
其實低葫,對偶式和反演式的本質(zhì)區(qū)別就是沒有了“對所有量取反”這一步。但為什么要保留“對常數(shù)取反”呢仍律?如果沒有這一步——比如嘿悬, 0+A=A 的對偶等式是 1?A=A ;如果不對常數(shù)取反水泉,就有 0?A=A 善涨,顯然不成立
總結(jié)
當(dāng)今時代,數(shù)字電路已廣泛應(yīng)用于各個領(lǐng)域草则。數(shù)字電路比模擬電路的發(fā)展更迅猛钢拧,應(yīng)用更廣泛。所以對于當(dāng)代的工科學(xué)生來說學(xué)好數(shù)字電路勢在必行炕横。其中源内,正確理解數(shù)字電路中的“數(shù)字”二字以及邏輯電路中的“邏輯”二字的含義是學(xué)好數(shù)字邏輯電路的基礎(chǔ)。本文梳理了邏輯代數(shù)的基礎(chǔ)內(nèi)容份殿,為今后數(shù)字邏輯電路的分析和設(shè)計打下良好的基礎(chǔ)膜钓。
————————————————
版權(quán)聲明:本文為CSDN博主「YF云飛」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議伯铣,轉(zhuǎn)載請附上原文出處鏈接及本聲明呻此。
原文鏈接:https://blog.csdn.net/flyTie/article/details/126804504