Transferul, prelucrarea i pstrarea datelor numerice sau nenumerice n interiorul unui calculator se realizeaz prin intermediul circuitelor de comutare. Aceste circuite se caracterizeaz prin faptul c prezint dou stri stabile care se deosebesc calitativ ntre ele. Strile sunt puse n coresponden cu valorile binare 0 i 1 sau cu valorile logice adevrat i fals (din acest motiv se mai numesc i circuite logice). Algebra propoziional (algebra logicii) opereaz cu propoziii care pot fi adevrate sau false. Unei propoziii adevrate i se atribuie valoarea 1, iar unei propoziii false i se atribuie valoarea 0. O propoziie nu poate fi simultan adevrat sau fals, iar dou propoziii sunt echivalente d.p.d.v. al algebrei logice, dac simultan ele sunt adevrate sau false. Propoziiile pot fi simple sau compuse, cele compuse obinndu-se din cele simple prin legturi logice de tipul conjunciei ., disjunciei v sau negaiei .
3.2. Definirea axiomatic a algebrei booleene
Algebra boolean este o algebr format din:
- elementele {0,1}; - 2 operaii binare numite SAU i SI, notate simbolic + sau v i sau .; - 1 operaie unar numit NU negaie, notat simbolic sau .
2 Fie o mulime M compus din elementele x 1 , x 2 ,x n , mpreun cu operaiile i +. Aceast mulime formeaz o algebr dac:
1) Mulimea M conine cel puin 2 elemente distincte x 1 = x 2
(x 1 ,x 2 e M);
2) Pentru x 1 e M, x 2 e M avem:
x 1 + x 2 e M i x 1 x 2 e M
3) Operaiile i + au urmtoarele proprieti:
a. sunt comutative x 1 x 2 = x 2 x 1
x 1 + x 2 = x 2 + x 1
b. sunt asociative x 1 (x 2 x 3 ) = (x 1 x 2 ) x 3
x 1 + (x 2 + x 3 ) = (x 1 + x 2 ) + x 3
c. sunt distributive una fa de cealalt x 1 (x 2 + x 3 ) = x 1 x 2 + x 1 x 3
x 1 + (x 2 x 3 ) = (x 1 + x 2 ) (x 1 + x 3 )
4) Ambele operaii admit cte un element neutru cu proprietatea:
x 1 + 0 = 0 + x 1 = x 1
x 1 1 = 1 x 1 = x 1
unde 0 este elementul nul al mulimii, iar 1 este elementul unitate al mulimii.
5) Dac mulimea M nu conine dect dou elemente, acestea trebuie s fie obligatoriu elementul nul 0 i elementul unitate 1; atunci pentru x e M exist un element unic notat cu x cu proprietile:
x x = 0 principiul contradiciei x + x = 1 principiul terului exclus x este inversul elementului x.
n definirea axiomatic a algebrei s-au folosit diferite notaii. n tabelul urmtor se dau denumirile i notaiile specifice folosite pentru diverse domenii:
3 Matematic Logic Tehnic Prima lege de compoziie x 1 + x 2
Disjuncie x 1 v x 2
SAU x 1 + x 2
A doua lege de compoziie x 1 x 2
Conjuncie x 1 . x 2
SI x 1 x 2
Elementul invers x Negare x NU x
3.3. Proprietile algebrei booleene
Plecnd de la axiome se deduc o serie de proprieti care vor forma reguli de calcul n cadrul algebrei booleene. Aceste proprieti sunt:
1) Principiul dublei negaii x = x dubla negaie duce la o afirmaie
2) Idempotena x x = x x + x = x
3) Absorbia x 1 (x 1 + x 2 ) = x 1
x 1 + (x 1 x 2 ) = x 1
4) Proprietile elementelor neutre x 0 = 0 x 1 = x x + 0 = x x + 1 = 1
5) Formulele lui De Morgan x 1 x 2 = x 1 + x 2
x 1 + x 2 = x 1 x 2 Aceste formule sunt foarte utile datorit posibilitii de a transforma produsul logic n sum logic i invers. Formulele pot fi generalizate la un numr arbitrar de termeni: x 1 x 2 x n = x 1 + x 2 + + x n
x 1 + x 2 + + x n = x 1 x 2 x n
6) Principiul dualitii dac n axiomele i proprietile algebrei booleene se interschimb 0 cu 1 i + cu , sistemul de axiome rmne acelai, n afara unor permutri.
4 Verificarea proprietilor se poate face cu ajutorul tabelelor de adevr i cu observaia c dou funcii sunt egale dac iau aceleai valori n toate punctele domeniului de definiie. Prin tabelul de adevr se stabilete o coresponden ntre valorile de adevr ale variabilelor i valoarea de adevr a funciei. Obs. Comutativitatea i asociativitatea pot fi extinse la un numr arbitrar, dar finit, de termeni, indiferent de ordinea lor.
3.4. Funcii booleene
O funcie f: B n B, unde B = {0,1} se numete funcie boolean. Aceast funcie boolean y = f(x 1 , x 2 ,,x n ) are drept caracteristic faptul c att variabilele ct i funcia nu pot lua dect dou valori distincte, 0 sau 1. Funcia va pune n coresponden fiecrui element al produsului cartezian n dimensional, valorile 0 sau 1. Astfel de funcii sunt utilizate pentru caracterizarea funcionrii unor dispozitive (circuite) construite cu elemente de circuit avnd dou stri (ex.: un ntreruptor nchis sau deschis, un tranzistor blocat sau n conducie; funcionarea unui astfel de circuit va fi descris de o variabil boolean x i ).
3.4.1. Funcii booleene elementare
Fie forma general a unei funcii booleene de n variabile:
y = f(x 1 , x 2 ,,x n )
Domeniul de definiie este format din m = 2 n puncte. Deoarece n fiecare din aceste puncte funcia poate lua doar valorile 0 i 1 rezult c numrul total al funciilor booleene de n variabile este N = 2 m .
Se considera n continuare funciile elementare de 1 variabil. Pentru n = 1 avem m = 2 i N = 4. Funcia are forma y = f(x) i cele 4 forme ale ei se gsesc n tabelul urmtor:
f i x 0 1 Reprezentare Denumire f 0 0 0 0 Constanta 0 f 1 0 1 x Variabila x f 2 1 0 x Negaia lui x f 3 1 1 1 Constanta 1
5 La fel se pot realiza toate funciile cu ajutorul unor funcii de baz. Acestora le vor corespunde i nite circuite logice elementare, cu ajutorul crora se poate realiza practic orice tip de circuit. innd cont de faptul c circuitele logice de comutaie au 2 stri stabile LOW (L) i HIGH (H), asignnd lui L 0 i lui H 1 se poate ntocmi un tabel al funciilor elementare.
Denumire Funcie Simbol Tabel de adevr Tabel de definiie Inversor NOT f = x x f = x x f 0 1 1 0 x f L H H L Poart SI AND f = x 1 x 2 x 1
x 2
f=x 1 x 2
x 1 x 2 f 0 0 0 0 1 0 1 0 0 1 1 1 x 1 x 2 f L L L L H L H L L H H H Poart SAU OR f = x 1 + x 2 x 1
x 2
f=x 1 +x 2
x 1 x 2 f 0 0 0 0 1 1 1 0 1 1 1 1 x 1 x 2 f L L L L H H H L H H H H Poart SI-NU NAND f = x 1 x 2 x 1
x 2
f=x 1 x 2
x 1 x 2 f 0 0 1 0 1 1 1 0 1 1 1 0 x 1 x 2 f L L H L H H H L H H H L Poart SAU-NU NOR f = x 1 + x 2 x 1
x 2
f=x 1 +x 2
x 1 x 2 f 0 0 1 0 1 0 1 0 0 1 1 0 x 1 x 2 f L L H L H L H L L H H L SAU EXCLUSIV XOR f = x 1 + x 2 x 1
x 2
f=x 1 + x 2
x 1 x 2 f 0 0 0 0 1 1 1 0 1 1 1 0 x 1 x 2 f L L L L H H H L H H H L COINCIDEN f = x 1 x 2 x 1
x 2
f=x 1 x 2
=x 1 + x 2
x 1 x 2 f 0 0 1 0 1 0 1 0 0 1 1 1 x 1 x 2 f L L H L H L H L L H H H
6 3.4.2. Reprezentarea funciilor booleene
Exist dou moduri de reprezentare a funciilor booleene: grafic i analitic.
1. Modaliti grafice - se caracterizeaz printr-o reprezentare intuitiv(szemlelteto), uor de reinut, dar sunt inadecvate pentru funcii booleene cu un numr de variabile mai mare dect 4;
2. Modaliti analitice - sunt mai greoaie, dar permit metode automate, deci algoritmi de simplificare a funciei; se folosesc n general pentru funcii booleene cu numrul variabilelor mai mare dect 5.
2.4.2.1. Modaliti de reprezentare grafic
Modalitile de reprezentare grafic sunt: tabel de adevr, diagram Karnaugh, schem logic, diagram de timp.
1. Tabel de adevr
Se marcheaz ntr-un tabel corespondena dintre valorile de adevr ale variabilelor de intrare i valoarea de adevr a funciei, n fiecare punct al domeniului de definiie. Pentru o funcie cu n variabile de intrare vom avea 2 n combinaii. Exist situaii n care, pentru anumite combinaii ale variabilelor de intrare, valoarea funciei nu este specificat. Aceste funcii se numesc incomplet definite. n tabel, n locul n care funcia nu este specificat, se noteaz cu X. Dac o funcie boolean este incomplet definit pentru m combinaii ale variabilelor de intrare se pot defini 2 m funcii noi prin alegerea arbitrar a valorilor incomplet definite.
2. Diagram Karnaugh
O diagram Karnaugh pentru o funcie boolean de n variabile se deseneaz sub forma unui ptrat sau dreptunghi mprit n 2 n celule. Fiecare celul este rezervat unui termen canonic al funciei, respectiv unuia dintre vrfurile cubului n dimensional din reprezentarea geometric a funciei (2n n-uple ale funciei). Diagrama Karnaugh este organizat astfel nct dou celule vecine pe o linie sau pe o coloan corespund la doi termeni canonici care difer numai printr-o singur variabil, care apare n unul adevrat, iar n 7 cellalt negat (la dou n-pluri adiacente). Se consider vecine i celulele aflate la capetele opuse ale unei linii, respectiv coloane.
Exemple:
1) Diagrama Karnaugh pentru funcia de 2 variabile:
f(x 1 , x 2 ) = x 1 x 2 + x 1 x 2
x 2 x 1 0 1 x 2 x 1 0 1 0 x 1 x 2
x 1 x 2 0 0 1 x 2 1 x 1 x 2 x 1 x 2 1 1 0 x 1
sau x 1
00 01 11 10
x 2
Obs. Numerotarea liniilor i coloanelor se face n cod Gray (cod binar reflectat)
2) Diagrama Karnaugh pentru funcia de 3 variabile:
y = f(x 1 ,x 2 ,x 3 ) 8 Domeniul de definiie este format din 2 3 = 8 puncte i reprezint vrfurile unui cub cu latura 1: x 1
001 101 011 111
000 100 x 3
010 110 x 2
Diagramele Karnaugh corespunztoare pot fi reprezentate astfel: x 2
x 1 x 2 x 3 00 01 11 10 0 0 1 3 2 x 1 1 4 5 7 6 x 3
sau
x 3
x 1 x 2 x 3 0 1 00 0 1
01 2 3 x 2
x 1 11 6 7
10 4 5
3) Diagrama Karnaugh pentru funcia de 4 variabile: y = f(x 1 ,x 2 ,x 3 ,x 4 )
x 4
x 1 x 2 x 3 x 4 00 01 11 10 00 0 1 3 2
01 4 5 7 6 x 2
x 1 11 12 13 15 14
10 8 9 11 10
x 3
Prin sgei am marcat vecintile punctului de coordonate 0010. 9 4) Diagramele Karnaugh pentru funcii de mai mult de 4 variabile se construiesc din diagrame de 4 variabile considerate ca diagrame elementare.
3. Schem logic reprezentare cu ajutorul simbolurilor circuitelor logice.
4. Diagram de timp reprezentare util pentru studiul unor forme tranzitorii de hazard n circuitele logice. Se reprezint funcii logice n a cror evoluie intervine timpul.