Solver Tablicy Karnaugha (K-Map)
Minimalizuj funkcje logiczne Boole'a za pomocą tablic Karnaugha. Wprowadź mintermy, makstermy lub przełącz tablicę prawdy — uzyskaj uproszczone wyrażenie Sumy Produktów (SOP) lub Produktu Sum (POS) z wizualizacją grup oznaczoną kolorami, implikantami pierwszymi, istotnymi implikantami pierwszymi oraz rozwiązaniem krok po kroku metodą Quine'a-McCluskeya.
Blokada reklam uniemożliwia wyświetlanie reklam
MiniWebtool jest darmowy dzięki reklamom. Jeśli to narzędzie Ci pomogło, wesprzyj nas przez Premium (bez reklam + szybciej) albo dodaj MiniWebtool.com do wyjątków i odśwież stronę.
- Albo przejdź na Premium (bez reklam)
- Zezwól na reklamy dla MiniWebtool.com, potem odśwież
O Solver Tablicy Karnaugha (K-Map)
Solver Tablicy Karnaugha (K-Map) minimalizuje dowolną funkcję logiczną Boole'a od 2 do 5 zmiennych i wizualizuje uproszczenie jako klasyczną tablicę Karnaugha z grupami oznaczonymi kolorami. Wprowadź mintermy, makstermy lub użyj interaktywnej tabeli prawdy — solver wykorzystuje algorytm Quine'a-McCluskeya, znajduje każdy implicant prosty, zaznacza te istotne i generuje minimalne wyrażenie w postaci Sumy Produktów (SOP) lub Produktu Sum (POS) wraz z wyjaśnieniem krok po kroku. Kliknij dowolny implicant prosty, aby zobaczyć pulsowanie komórek, które pokrywa, i zrozumieć, jak grupowanie upraszcza logikę.
Co to jest tablica Karnaugha?
Tablica Karnaugha (wynaleziona przez Maurice'a Karnaugha w 1953 roku) to graficzna reprezentacja tabeli prawdy, ułożona w taki sposób, że komórki różniące się tylko jedną zmienną wejściową fizycznie ze sobą sąsiadują. Kluczowym elementem jest kodowanie Graya dla wierszy i kolumn: kolejne etykiety, takie jak 00, 01, 11, 10, różnią się dokładnie jednym bitem. To sąsiedztwo pozwala wizualnie wykryć grupy jedynek (lub zer), które można połączyć w jeden uproszczony term.
Dla n zmiennych wejściowych tablica Karnaugha ma 2^n komórek. Tablica dla 4 zmiennych to siatka 4×4 z 16 komórkami; tablica dla 5 zmiennych jest rysowana jako dwie sąsiadujące siatki 4×4.
SOP czy POS: którą postać wybrać?
Suma Produktów (SOP)
SOP grupuje komórki z 1. Każda grupa staje się iloczynem (AND) literałów, a wszystkie grupy są połączone operatorem OR. Przykład: AB'C + BD. SOP jest zazwyczaj domyślnym wyborem, ponieważ mapuje się bezpośrednio na sieci bramek AND-OR.
Produkt Sum (POS)
POS grupuje komórki z 0. Każda grupa staje się sumą (OR) zanegowanych literałów, a wszystkie sumy są połączone operatorem AND. Przykład: (A + B')(C + D'). POS jest często mniejszy, gdy funkcja ma więcej jedynek niż zer.
Narzędzie oblicza obie formy niezależnie — przełącz tryb wyjściowy, aby porównać liczbę literałów i wybrać postać prostszą dla Twojej implementacji.
Zasady grupowania w tablicach Karnaugha
- Tylko grupy o rozmiarze potęgi dwójki: grupy muszą zawierać 1, 2, 4, 8 lub 16 komórek. Grupy 3- lub 5-elementowe są niedozwolone.
- Kształt prostokątny: komórki w grupie muszą tworzyć prostokąt (poziomo, pionowo lub zawijając się przez krawędzie).
- Sąsiedztwo zawijane: górny wiersz sąsiaduje z dolnym; lewa kolumna sąsiaduje z prawą. Dlatego kodowanie Graya jest tak ważne.
- Najpierw największe grupy: większe grupy eliminują więcej zmiennych, tworząc krótsze termy. Grupa 8-komórkowa usuwa 3 zmienne; 4-komórkowa usuwa 2; 2-komórkowa usuwa 1.
- Każda jedynka musi być pokryta: co najmniej jedna grupa musi obejmować każdą komórkę z 1 (dla SOP) lub z 0 (dla POS).
- Nakładanie się grup jest dozwolone: ta sama jedynka może być częścią wielu grup, jeśli prowadzi to do utworzenia większych grup.
- Stany nieistotne są elastyczne: mogą być grupowane, jeśli pomaga to w tworzeniu większych grup, ale nie muszą być pokryte.
Implicanty proste i istotne implicanty proste
Implicant prosty to grupa, której nie można już powiększyć — dalsze powiększenie objęłoby komórkę z 0 (dla SOP). Solver znajduje każdy taki implicant, a następnie wybiera minimalne pokrycie: najmniejszy zestaw implicantów prostych pokrywający wszystkie wymagane mintermy.
Istotny implicant prosty jest oznaczony jako ISTOTNY, gdy jest jedynym implicantem pokrywającym co najmniej jeden konkretny minterm. Każde minimalne wyrażenie musi zawierać wszystkie istotne implicanty proste. Po ich wybraniu pozostałe niepokryte mintermy są uzupełniane „najtańszymi” dodatkowymi implicantami.
Stany nieistotne (Don't-Care)
Stan nieistotny (oznaczony jako X na tablicy) to kombinacja wejściowa, której wynik nie ma znaczenia — albo nigdy nie występuje w rzeczywistym obwodzie, albo jej wartość nie wpływa na działanie systemu. Algorytm może potraktować każde X jako 0 lub 1, wybierając opcję dającą prostsze wyrażenie. W praktyce stany nieistotne często redukują liczbę literałów o 30–60%. Częste źródło: dekodery cyfr dziesiętnych, które używają tylko 10 z 16 kombinacji 4-bitowych, pozostawiając kombinacje 10–15 jako stany nieistotne.
Algorytm Quine'a-McCluskeya
Tablica Karnaugha to metoda wizualna, ale dla więcej niż 4–5 zmiennych staje się niepraktyczna. Algorytm Quine'a-McCluskeya (QM) to jej tabelaryczny odpowiednik — matematycznie rygorystyczny i skalowalny. Ten solver używa QM wewnętrznie:
- Listuje mintermy binarnie, grupując je według liczby jedynek.
- Łączy pary z sąsiednich grup (różniące się jednym bitem), zastępując różniący się bit myślnikiem. Przykład:
0011+0111→0-11. - Powtarza proces aż do momentu, gdy dalsze łączenie nie jest możliwe. Termy, których nie da się połączyć, to implicanty proste.
- Buduje tabelę implicantów prostych — wiersze to implicanty, kolumny to mintermy. Identyfikuje istotne implicanty (kolumny z jednym zaznaczeniem).
- Metoda Petricka / przeszukiwanie wyczerpujące: dla pozostałych mintermów znajduje najmniejszy zestaw dodatkowych implicantów.
Jak korzystać z tego kalkulatora
- Wybierz liczbę zmiennych: 2, 3, 4 lub 5. Siatka tablicy dostosuje się automatycznie.
- Wybierz metodę wprowadzania:
- Mintermy: wpisz indeksy, gdzie F = 1 (np.
1, 3, 5, 7) oraz stany nieistotne. - Makstermy: wpisz indeksy, gdzie F = 0. Solver automatycznie uzupełni resztę jako 1.
- Tabela prawdy: klikaj wiersze, aby przełączać wynik między 0, 1 i X. Idealne do ręcznego projektowania logiki.
- Mintermy: wpisz indeksy, gdzie F = 1 (np.
- Wybierz SOP lub POS. Porównaj obie formy — jedna jest często krótsza od drugiej.
- Kliknij Rozwiąż. Pojawi się tablica Karnaugha z kolorowymi grupami. Kliknij dowolny element legendy, aby podświetlić pokryte komórki.
- Sprawdź kroki: analiza Quine'a-McCluskeya pokazuje, jak wyznaczono każdy implicant i które są istotne.
Przykład: Funkcja 4-zmienna ze stanami nieistotnymi
Rozważmy F(A,B,C,D) = Σm(1, 3, 7, 11, 15) + d(0, 2, 5).
Bez stanów nieistotnych minimalna postać SOP wymagałaby wielu termów. Potraktowanie {0, 2} jako 1 pozwala solverowi zbudować 4-komórkową grupę A'B' (pokrywającą 0, 1, 2, 3). Potraktowanie 5 jako 1 pozwala rozszerzyć pokrycie CD. Wynikowe uproszczenie to:
Tylko 4 literały — zamiast ponad 10 bez użycia stanów nieistotnych. Możesz załadować ten przykład za pomocą przycisku „4-zmienne ze stanami X” powyżej.
Dlaczego warto minimalizować funkcje logiczne?
- Mniej bramek = niższy koszt sprzętu, mniejsza powierzchnia układu scalonego, mniejszy pobór mocy.
- Szybsze obwody: mniej opóźnień bramkowych na ścieżce krytycznej.
- Czytelniejsza dokumentacja: zwięzłe wyrażenie jest łatwiejsze do weryfikacji i konserwacji.
- Fundament projektowania cyfrowego: każde narzędzie do syntezy FPGA używa algorytmów wywodzących się z Quine'a-McCluskeya (np. Espresso-II).
Ograniczenia i kiedy używać innych narzędzi
- Powyżej 5 zmiennych: tablice Karnaugha stają się nieczytelne. To narzędzie wspiera do 5 zmiennych poprzez podział na dwie tablice 4×4. Dla większej liczby polegaj na krokach Quine'a-McCluskeya lub profesjonalnych narzędziach typu ABC / Espresso.
- Hazardy i szpilki: minimalne pokrycie może zawierać hazardy statyczne. W projektowaniu wolnym od hazardów należy dodać nadmiarowe implicanty — to narzędzie je zaznacza, ale nie dodaje ich automatycznie do wyniku końcowego.
- Minimalizacja wielowyjściowa: jeśli kilka funkcji współdzieli zmienne, wspólna minimalizacja (dzielenie bramek) daje lepsze efekty. To narzędzie minimalizuje jedną funkcję naraz.
Najczęściej zadawane pytania
Co to jest tablica Karnaugha?
Tablica Karnaugha (K-map) to wizualna metoda minimalizacji wyrażeń Boole'owskich. Komórki są ułożone tak, aby sąsiednie komórki różniły się tylko jedną zmienną (kod Graya). Grupowanie jedynek w prostokąty o rozmiarze 1, 2, 4, 8 lub 16 pozwala uzyskać minimalne wyrażenie w postaci Sumy Produktów.
Jaka jest różnica między SOP a POS?
SOP (Suma Produktów) grupuje komórki z 1 i łączy ich iloczyny operatorem OR, np. A'B + CD. POS (Produkt Sum) grupuje komórki z 0 i łączy ich sumy operatorem AND, np. (A + B')(C' + D). Oba opisują tę samą funkcję, ale jedna forma jest zazwyczaj bardziej zwarta.
Czym są stany nieistotne (don't-cares) i po co ich używać?
Stany nieistotne (oznaczone X) to kombinacje wejściowe, których wartość wyjściowa jest nieistotna — nigdy nie wystąpią lub ich wartość nie ma znaczenia. Solver może potraktować je jako 0 lub 1, zależnie od tego, co daje prostsze wyrażenie. Stany nieistotne często drastycznie zmniejszają liczbę literałów.
Co to jest implicant prosty?
Implicant prosty to największa możliwa grupa sąsiednich komórek z 1 (o rozmiarze będącym potęgą dwójki), której nie można już powiększyć. Istotny implicant prosty to taki, który jako jedyny pokrywa co najmniej jeden minterm i musi zostać uwzględniony w każdym minimalnym wyrażeniu.
Jak działa algorytm Quine'a-McCluskeya?
Quine-McCluskey jest tabelarycznym odpowiednikiem tablicy Karnaugha, odpowiednim dla wielu zmiennych. Listuje wszystkie mintermy binarnie, grupuje je według liczby jedynek i iteracyjnie łączy pary różniące się dokładnie jednym bitem. Termy, których nie da się dalej połączyć, to implicanty proste. Tabela implicantów prostych pozwala następnie wybrać minimalne pokrycie.
Ile zmiennych obsługuje ten solver Tablicy Karnaugha?
To narzędzie obsługuje od 2 do 5 zmiennych. Tablica Karnaugha dla 5 zmiennych jest wyświetlana jako dwie sąsiadujące tablice 4×4 (jedna dla A=0, druga dla A=1). Powyżej 5 zmiennych tablice Karnaugha stają się niepraktyczne; dla większych funkcji należy korzystać z kroków Quine'a-McCluskeya.
Dalsza lektura
Cytuj ten materiał, stronę lub narzędzie w następujący sposób:
"Solver Tablicy Karnaugha (K-Map)" na https://MiniWebtool.com/pl// z MiniWebtool, https://MiniWebtool.com/
przez zespół MiniWebtool. Zaktualizowano: 20 kwietnia 2026
Możesz także wypróbować nasz AI Rozwiązywacz Matematyczny GPT, aby rozwiązywać swoje problemy matematyczne poprzez pytania i odpowiedzi w języku naturalnym.