Zoals we eerder hebben gezien, gebruikt Booleaanse Algebra een verzameling wetten en regels om de werking van een digitale logische schakeling te definiëren, waarbij “0’s” en “1’s” worden gebruikt om een digitale ingang of uitgangstoestand weer te geven. Booleaanse Algebra gebruikt deze nullen en enen om waarheidstabellen en wiskundige uitdrukkingen te maken om de digitale werking van een logische AND, OR en NOT (of inversie) operaties te definiëren, evenals manieren om andere logische operaties uit te drukken, zoals de XOR (Exclusive-OR) functie.
Terwijl George Boole’s verzameling wetten en regels ons in staat stelt een digitale schakeling te analyseren en te vereenvoudigen, zijn er twee wetten binnen zijn verzameling die worden toegeschreven aan Augustus DeMorgan (een negentiende-eeuwse Engelse wiskundige) die de logische NAND- en NOR-bewerkingen als afzonderlijke respectievelijk NIET EN en NIET OF functies beschouwt.
Maar voordat we DeMorgan’s theorie in meer detail bekijken, herinneren we ons de basis logische operaties waarbij A en B binaire logische (of Booleaanse) ingangsvariabelen zijn, en waarvan de waarden alleen “0” of “1” kunnen zijn, wat vier mogelijke ingangscombinaties oplevert, 00, 01, 10, en 11.
Waarheidstabel voor elke logische bewerking
Invoervariabele | Uitvoervoorwaarden | ||||||
A | B | AND | NAND | OR | NOR | ||
0 | 0 | 1 | 0 | 1 | |||
0 | 1 | 0 | 1 | 0 | |||
1 | 0 | 0 | 1 | 1 | 0 | ||
1 | 1 | 1 | 0 | 1 | 0 |
De volgende tabel geeft een lijst van de gebruikelijke logische functies en hun equivalente Booleaanse notatie waarbij een “.” (een punt) een AND (product)-bewerking betekent, een “+” (plusteken) een OR (som)-bewerking betekent, en het complement of inverse van een variabele wordt aangegeven met een balkje over de variabele.
Logische functie | Boolean Notation | AND | A.B |
OR | A+B |
NOT | A |
NAND | A .B |
NOR | A+B |
DeMorgan’s Theorie
DeMorgan’s Stellingen zijn in feite twee reeksen regels of wetten ontwikkeld uit de Booleaanse uitdrukkingen voor AND, OR en NOT met behulp van twee invoervariabelen, A en B. Deze twee regels of stellingen maken het mogelijk de invoervariabelen te negeren en de ene vorm van een Booleaanse functie om te zetten in een tegengestelde vorm.
De eerste stelling van DeMorgan stelt dat twee (of meer) variabelen NOR´ed samen hetzelfde is als de twee variabelen geïnverteerd (Complement) en AND´ed, terwijl de tweede stelling stelt dat twee (of meer) variabelen NAND´ed samen hetzelfde is als de twee termen geïnverteerd (Complement) en OR´ed. Dat wil zeggen alle OR-operatoren vervangen door AND-operatoren, of alle AND-operatoren door een OR-operator.
DeMorgan’s Eerste Stelling
DeMorgan’s Eerste Stelling bewijst dat wanneer twee (of meer) invoervariabelen AND’ed en ontkend worden, zij equivalent zijn aan de OR van de complementen van de afzonderlijke variabelen. Het equivalent van de NAND-functie zal dus een negatieve-OR-functie zijn, wat bewijst dat A.B = A+B. We kunnen deze bewerking laten zien met behulp van de volgende tabel.
Verificatie van DeMorgan’s Eerste Stelling met behulp van waarheidstabel
Inputs | Truth Table Outputs For Each Term | ||||||
B | A | A.B | A.B | A | B | A + B | |
0 | 0 | 0 | 1 | 1 | 1 | ||
0 | 1 | 0 | 1 | 0 | 1 | 1 | |
1 | 0 | 0 | 1 | 1 | 0 | 1 | |
1 | 1 | 1 | 0 | 0 | 0 |
We kunnen ook aantonen dat A.B = A+B met behulp van logische poorten zoals afgebeeld.
DeMorgan’s Eerste Wet Implementatie met behulp van Logische Poorten
De bovenste logische poort opstelling van: A.B kan worden geïmplementeerd met behulp van een standaard NAND-poort met ingangen A en B. De onderste logische poort opstelling inverteert eerst de twee ingangen die A en B produceren. De uitgang van de OR-poort wordt dus: A+B
Dan zien we hier dat een standaard OR poort functie met inverters (NOT gates) op elk van zijn ingangen equivalent is aan een NAND poort functie. Dus een individuele NAND-poort kan op deze manier worden voorgesteld als het equivalent van een NAND-poort is een negatieve-OR.
DeMorgan’s Tweede Stelling
DeMorgan’s Tweede Stelling bewijst dat wanneer twee (of meer) ingangsvariabelen worden OR’ed en genegeerd, ze equivalent zijn aan de AND van de complementen van de afzonderlijke variabelen. Het equivalent van de NOR-functie is dus een negatieve-AND-functie die bewijst dat A+B = A.B, en opnieuw kunnen we de werking hiervan aantonen met behulp van de volgende waarheidstabel.
Verificatie van DeMorgan’s Tweede Stelling met waarheidstabel
Inputs | Truth Table Outputs For Each Term | ||||||
B | A | A+B | A+B | A | B | A . B | |
0 | 0 | 0 | 1 | 1 | 1 | 1 | |
0 | 1 | 1 | 0 | 0 | 1 | 0 | |
1 | 0 | 1 | 0 | 1 | 0 | 0 | |
1 | 1 | 1 | 0 | 0 | 0 | 0 |
We kunnen ook aantonen dat A+B = A.B met behulp van het volgende logische poort voorbeeld.
DeMorgan’s Tweede Wet Implementatie met behulp van Logische Poorten
De bovenste logische poort opstelling van: A+B kan worden geïmplementeerd met behulp van een standaard NOR-poortfunctie met de ingangen A en B. De onderste logische poortopstelling inverteert eerst de twee ingangen, waardoor A en B worden geproduceerd. Daarom wordt de output van de AND poort: A.B
Dan kunnen we zien dat een standaard AND poortfunctie met inverters (NOT gates) op elk van zijn ingangen een equivalente uitgangstoestand oplevert als een standaard NOR poortfunctie, en een individuele NOR poort kan op deze manier worden voorgesteld, aangezien het equivalent van een NOR poort een negatieve-AND is.
Hoewel we DeMorgan’s stellingen hebben gebruikt met slechts twee invoervariabelen A en B, zijn ze evenzeer geldig voor gebruik met drie, vier of meer invoervariabele uitdrukkingen, bijvoorbeeld:
Voor een 3-variabele invoer
A.B.C = A+B+C
en ook
A+B+C = A.B.C
Voor een 4-variabele invoer
A.B.C.D = A+B+C+D
en ook
A+B+C+D = A.B.C.D
enzovoort.
DeMorgan’s Equivalent Gates
We hebben hier gezien dat we met behulp van DeMorgan’s Stellingen alle AND (.) operatoren kunnen vervangen door een OR (+) en vice versa, en vervolgens elk van de termen of variabelen in de uitdrukking kunnen aanvullen door deze te inverteren, dat wil zeggen 0’s naar 1’s en 1’s naar 0’s alvorens de hele functie te inverteren.
Dus om het DeMorgan-equivalent voor een AND-, NAND-, OR- of NOR-poort te verkrijgen, voegen we eenvoudigweg inverters (NOT-gates) toe aan alle in- en uitgangen en veranderen we een AND-symbool in een OR-symbool of veranderen we een OR-symbool in een AND-symbool, zoals in de volgende tabel is aangegeven.
DeMorgan’s Equivalent Gates
Standaard Logische Poort | DeMorgan’s Equivalent Gate |
Dan hebben we in deze tutorial over DeMorgan’s Thereom gezien dat het complement van twee (of meer) AND’ed invoervariabelen equivalent is aan de OR van de complementen van deze variabelen, en dat het complement van twee (of meer) OF’ed variabelen gelijkwaardig is aan de AND van de complementen van de variabelen zoals gedefinieerd door DeMorgan.