Găsirea minimului DNF cu ajutorul hărților de carne

Această metodă este folosită pentru formule cu un număr mic de variabile. Harta Carnot pentru o funcție a variabilelor n conține celule 2 n, fiecare dintre acestea corespund uneia dintre cele 2 n combinații posibile ale valorilor n variabilelor booleene x1, x2, ..., xn. Două celule adiacente se disting prin valoarea unei singure variabile. În cazul unei funcții a trei variabile, harta Carnot poate fi reprezentată în următoarea formă:







Toate celulele marcate xi bracket (rând și coloană) sunt seturi cu xi = 1, iar în rânduri și coloane nemarcate seturilor de celule corespund cu xi = 0.


În cazul a patru variabile, harta Carnot are următoarea formă:

O funcție booleană poate fi reprezentat în harta Karnaugh celule de presă pe hartă corespunzătoare setului pe care funcția ia valoarea 1. În aceste celule vom scrie 1. Celulele albe corespund zerouri.







Exemplul 3.14. Umplem harta Carnot pentru funcția respectivă

2 kilograme de celule vecine care conțin unități sunt numite acoperire dacă sunt aranjate sub formă de dreptunghi sau pătrat. Se presupune că celulele de la capetele opuse ale rândului sau coloanei sunt adiacente, ca în cazul în care harta este situată pe torus. Fiecare acoperire corespunde unui implicant. O acoperire constând din două celule corespunde produsului tuturor variabilelor, cu excepția unuia, valoarea cărora este diferită pentru aceste celule. O acoperire de patru celule corespunde unui produs în care nu există două variabile și așa mai departe. Cu cât sunt mai multe celule în copertă, cu atât este mai ușor implicatul. Pentru a obține un implicant simplu, este aleasă o acoperire de cea mai mare dimensiune.

Pentru a construi o DNF minimă pe harta Carnot, urmează două reguli.

1. Alegeți o acoperire de cea mai mare dimensiune, care conține celule care nu pot fi în nici un alt strat.

2. Pentru celelalte celule, selectați cea mai mare acoperire.

Exemplul 3.15. Să găsim DNF minim pentru funcție.

Scriem numere binare ale tuturor K 1:

0000, 0001, 0010, 0011, 0100, 0110, 0111, 1000, 1001, 1011, 1111.







Articole similare

Trimiteți-le prietenilor: