カルノー図 (K-Map) ソルバー
MiniWebtoolのカルノー図(K-map)ソルバーで、ブール関数を視覚的に簡約できます。最小項、最大項、または真理値表の値を入力すると、グループ化したセルと簡約形の論理和標準形または論理積標準形を計算手順とともに示します。
使い方がわからないときはAIに聞く
下に最小項または真理値表を入力すると、簡略化された論理式、グループ分け、そして途中の手順が求まります。
広告ブロッカーにより広告を表示できません
MiniWebtool は広告収入によって無料で提供されています。このツールがお役に立った場合は、広告なしの閲覧とより多い毎日の利用回数のためにアップグレードするか、MiniWebtool.com を許可して再読み込みしてください。
- MiniWebtool.com の広告を許可して再読み込み
- またはアップグレードして広告なしと高い日次上限を利用
カルノー図 (K-Map) ソルバー
カルノー図 (K-Map) ソルバーは、2~5変数のブール論理関数を最小化し、色分けされたグループ化によって古典的なカルノー図として簡略化を可視化します。最小項、最大項を入力するか、対話型の真理値表を使用してください。ソルバーは内部でクワイン・マクラスキー法を実行し、すべての主項を見つけ、必須主項をマークし、ステップバイステップの解説付きで最小の積和形 (SOP) または和積形 (POS) の式を生成します。主項チップをクリックすると、それがカバーするセルが点滅し、グループ化によってどのように論理が簡略化されるかを確認できます。
一目でわかる
カルノー図 (K-Map) ソルバーは、2~5変数のブール関数を簡単化します。グループを色分けしたカルノー図を描き、Quine-McCluskey法の手順とともに最小積和形または和積形を返します。
| 機能 | できること | 向いている用途 |
|---|---|---|
| 変数 | 2、3、4、5変数に対応します。5変数関数は隣接する2枚の4x4図で表示します。 | デジタル論理の課題や小規模な回路設計 |
| 入力方法 | 最小項、最大項、ドントケアをリストで入力するか、操作できる真理値表の行をクリックして0、1、Xを切り替えます。 | インデックス一覧や真理値表から解く |
| SOPまたはPOS | 出力形式として最小積和形(1をグループ化)または和積形(0をグループ化)を選びます。 | どちらの形式がリテラル数を減らせるか比べる |
| 主項 | すべての主項を求め、必須主項を示します。グループのチップをクリックすると、図上の該当セルが強調表示されます。 | 各グループがどのセルを覆うか確認する |
| 解説付きの手順 | Quine-McCluskey法による解法を真理値表とともに順を追って表示します。 | 最小式の導き方を学ぶ |
| 自分の答えを確認 | A'B + CDや(A + B')(C + D)のような式を入力して、結果と比較できます。 | 手作業で簡単化した答えを検証する |
カルノー図とは何ですか?
カルノー図(1953年にモーリス・カルノーによって発明)は、真理値表をグラフィカルに表現したもので、入力変数が1つだけ異なるセルが物理的に隣接するように配置されています。鍵となるのは、行と列のグレイコード順序です。00、01, 11, 10のように、連続するラベルは正確に1ビットだけ異なります。この隣接性により、単一の簡略化された項に結合できる1(または0)のグループを視覚的に特定できます。
n個の入力変数に対して、カルノー図には 2^n 個のセルがあります。4変数のカルノー図は16セルの4×4グリッドであり、5変数のマップは2つの隣接する4×4グリッドとして描かれます。
SOP 対 POS: どちらの形式を選ぶべきか
積和形 (SOP: Sum of Products)
SOPは1のセルをグループ化します。各グループはリテラルの積(AND)になり、すべてのグループが論理和(OR)で結ばれます。例: AB'C + BD。SOPはAND–ORゲートネットワークに直接マッピングされるため、通常はデフォルトとして使用されます。
和積形 (POS: Product of Sums)
POSは0のセルをグループ化します。各グループは反転したリテラルの和(OR)になり、すべての和が論理積(AND)で結ばれます。例: (A + B')(C + D')。関数に0よりも1が多い場合、POSの方が短くなることがよくあります。
このツールは両方の形式を個別に計算します。出力モードを切り替えてリテラル数を比較し、実装にとってより単純な方を選択してください。
カルノー図のグループ化ルール
- 2の累乗のグループのみ: グループには1、2、4、8、または16個のセルが含まれている必要があります。3個や5個のグループは許可されません。
- 長方形の形状: グループ内のセルは長方形を形成する必要があります(水平、垂直、または端をまたぐ)。
- 端の隣接性: 最上行は最下行と隣接し、左端の列は右端の列と隣接しています。これがグレイコード順序が重要である理由です。
- 最大のグループから優先: 大きなグループほど多くの変数を排除し、より短い積項を生成します。8セルのグループは3つの変数を排除し、4セルは2つ、2セルは1つ排除します。
- すべての1をカバーする必要がある: 各1のセル(SOPの場合)または0のセル(POSの場合)は、少なくとも1つのグループでカバーされる必要があります。
- 重複は許可される: より大きなグループにつながる場合、同じ1を複数のグループでカバーしても構いません。
- ドントケアは柔軟: ドントケアをグループに含めることでより大きなグループが作れる場合は含めても構いませんが、必ずしもカバーする必要はありません。
主項と必須主項
主項 (Prime Implicant) とは、それ以上拡張できないグループのことです。それ以上大きくすると、(SOPの場合)0のセルを含んでしまいます。ソルバーは見つけたすべての主項をリストします。その後、必要なすべての最小項をカバーする最小の主項セットである最小被覆 (Minimal Cover) を選択します。
必須主項 (Essential Prime Implicant) とは、特定の最小項をカバーしている唯一の主項である場合に必須とマークされます。すべての最小形式には、すべての必須主項が含まれている必要があります。それらを選択した後、残りの未カバーの最小項は、最も「コストの低い」追加の主項でカバーされます。
ドントケア条件
ドントケア(カルノー図上では X と表示)は、出力が重要ではない入力の組み合わせです。これは、実際の回路で決して発生しないか、値がどうであっても構わないかのいずれかです。アルゴリズムは、より単純な式が得られるように、各Xを0または1のいずれかとして自由に扱うことができます。実際、ドントケアを使用すると、リテラル数が30~60%削減されることがよくあります。現実世界の一般的な例としては、16個の4ビット入力組み合わせのうち10個しか使用しない10進デコーダがあり、組み合わせ10~15がドントケアとなります。
クワイン・マクラスキー法
カルノー図は視覚的な手法ですが、4~5変数を超えると実用的ではなくなります。クワイン・マクラスキー (QM) 法は、それに対応する表形式の手法であり、数学的に厳密でスケーラブルです。このソルバーは内部で QM 法を使用しています:
- 最小項をバイナリでリストし、1のビット数でグループ化します。
- 隣接するグループのペアを結合し(1ビットだけ異なるもの)、異なるビットをダッシュに置き換えます。例:
0011+0111→0-11。 - それ以上結合できなくなるまで繰り返します。結合できなくなった項が主項です。
- 主項表を作成します。行が主項、列が必要な最小項です。必須主項(チェックマークが1つしかない列)を特定します。
- ペトリック法 / 全探索: 残りの未カバー最小項について、それらをカバーする最小の追加主項セットを見つけます。
この電卓の使い方
- 変数の数を選択: 2、3、4、または5。カルノー図のグリッドが自動的に適応します。
- 入力方法を選択:
- 最小項: F = 1 となるインデックス(例:
1, 3, 5, 7)と、ドントケアを入力します。 - 最大項: F = 0 となるインデックスを入力します。ソルバーは残りを自動的に1として計算します。
- 真理値表: 各行をクリックして、出力を0、1、Xの間で切り替えます。手動設計の論理に最適です。
- 最小項: F = 1 となるインデックス(例:
- SOPまたはPOS出力を選択。切り替えて両方の形式を比較してください。一方が他方より短くなることがよくあります。
- 「解く」をクリック。各主項が異なる色で表示されたカルノー図が現れます。チップをクリックすると、それがカバーするセルが点滅します。
- 手順を確認: クワイン・マクラスキー法の内訳により、各主項がどのように導出され、どれが必須であるかが示されます。
計算例: ドントケアを含む4変数関数
F(A,B,C,D) = Σm(1, 3, 7, 11, 15) + d(0, 2, 5) を考えます。
ドントケアがない場合、最小のSOPにはいくつかの項が必要になります。{0, 2} を 1 として扱うことで、ソルバーは 4 セルのグループ A'B' (0, 1, 2, 3 をカバー) を作成できます。d(5) は不要で、ドントケアを使わない場合の最小式は CD + A'B'D (5 リテラル) です。結果として得られる簡略化は次のようになります:
リテラルはわずか4つです。ドントケアのトリックを使わない場合の10個以上から削減されています。上の「4変数 ドントケア付」クイック例で、この正確な例を読み込むことができます。
なぜブール関数を最小化するのですか?
- ゲート数の削減 = ハードウェアコストの低下、チップ面積の縮小、消費電力の低減。
- 回路の高速化: クリティカルパス上のゲート遅延が減少します。
- ドキュメントの簡素化: 簡潔な式は検証や保守が容易です。
- デジタル設計の基礎: Espresso などの2レベル最小化ツールは、同じ問題から生まれました。
制限事項と他のツールの使用時期
- 5変数以上: カルノー図は視覚的に乱雑になります。このツールは、2つの4×4マップに分割することで最大5変数までサポートしています。それを超える場合は、クワイン・マクラスキー法の手順に頼るか、ABC / Espresso などの合成ツールを使用してください。
- ハザードとグリッチ: 最小被覆には静的ハザードが含まれる場合があります。ハザードのない設計には、冗長な主項を含める必要があります。このツールはそれらをマークしますが、ハザードカバーを自動的に追加はしません。
- 複数出力の最小化: 複数の関数が変数を共有している場合、共同で最小化(ゲートの共有)を行うことでハードウェアをより小さくできます。このツールは一度に一つの関数を最小化します。
よくある質問
カルノー図とは何ですか?
カルノー図(K-map)は、ブール式を最小化するための視覚的な手法です。隣接するセルが1つの変数のみ異なるように配置されています(グレイコード順序)。1を1、2、4、8、または16のサイズの長方形にグループ化することで、最小の積和形表現を導き出します。
SOPとPOSの違いは何ですか?
SOP(積和形)は1のセルをグループ化し、それらの積項を論理和(OR)で結びます(例:A'B + CD)。POS(和積形)は0のセルをグループ化し、それらの和項を論理積(AND)で結びます(例:(A + B')(C' + D))。どちらも同じ関数を表しますが、通常どちらか一方がよりコンパクトになります。
ドントケアとは何ですか?なぜ使うのですか?
ドントケア項(Xでマーク)は、出力値が重要ではない入力の組み合わせです。これらは決して発生しないか、値がどうであっても構いません。ソルバーは、より単純な式が得られるように、これらを0または1のいずれかとして扱います。ドントケアを使用すると、多くの場合リテラル数を劇的に削減できます。
主項(プライムインプリカント)とは何ですか?
主項とは、それ以上拡張できない、隣接する1のセルの可能な限り最大のグループ(2の累乗サイズ)のことです。必須主項とは、少なくとも1つの最小項を単独でカバーしている主項であり、すべての最小形式に含まれる必要があります。
クワイン・マクラスキー法はどのように機能しますか?
クワイン・マクラスキー法はカルノー図の表形式版で、多くの変数に適しています。すべての最小項をバイナリでリストし、1の数でグループ化し、正確に1ビットだけ異なるペアを繰り返し結合します。それ以上結合できない項が主項となります。その後、主項表を使用して最小被覆を選択します。
このカルノー図ソルバーは何変数までサポートしていますか?
このツールは2から5変数までサポートしています。5変数のカルノー図は、2つの隣接する4×4マップ(A=0用とA=1用)として表示されます。5変数を超えるとカルノー図は実用的ではなくなるため、より大きな関数にはクワイン・マクラスキー法の手順を使用してください。
真理値表の行をK-mapの最小項番号に変換するには、どうすればよいですか?
変数の順序を決めます。一般的にはAを最上位ビット、最後の変数を最下位ビットとして、各入力行を2進数として読み取ります。3変数の場合、A=1、B=0、C=1の行は2進数の101なので、最小項番号は5です。F=1となる行の番号を入力してください。授業や教科書で別の変数順序を使っている場合は、番号が変わるため、その順序に統一してください。
K-mapの端をまたいでセルをグループ化できますか?
はい。K-mapのセルはグレイコード順に並ぶため、左右の端同士、上下の端同士は隣接しています。たとえば、最初の列と最後の列にある2つの1のセルは、変数が1つだけ異なるなら2セルのグループにできます。グループのセル数は2の累乗で、対象となる1をカバーする必要があります。必要に応じてドントケアも利用できます。結果を簡単にできる場合は、グループを重ねて構いません。
K-mapの簡単化で答えが1通りだけではないのはなぜですか?
ブール関数では、特にグループを重ねられる場合や、同じセルを複数の方法でカバーできる場合に、同じだけ簡潔なグループ分けが複数存在することがあります。その結果、見た目の異なる式でも、指定されたすべての入力で同じ値になります。答えを確かめるには、ドントケアの行を除いて両方の式を真理値表で評価してください。リテラルの並びが異なるだけでは、簡単化が間違いとは限りません。
参考文献
このコンテンツ、ページ、またはツールを引用する場合:
"カルノー図 (K-Map) ソルバー"(https://MiniWebtool.com/ja/カルノー図-k-map-ソルバー/)、MiniWebtool、https://MiniWebtool.com/
MiniWebtool チーム作成。更新日: 2026年4月20日
お気に入りのAIに聞く
Geminiでは、コピーした質問文をチャットに貼り付けてください。下からコピーすることもできます。
質問文を見る
高度な数学操作:
- 隣接行列電卓 新しい
- antilog電卓
- ベータ関数電卓
- 二項係数電卓
- 二項確率分布電卓
- ビットに基づいての電卓
- ブール代数簡略化ツール 人気
- 中心極限定理電卓
- 中国剰余定理電卓
- 組み合わせ電卓
- 相補誤差関数電卓
- 複素数電卓 人気
- 連分数電卓 人気
- 完全順列 サブファクトリアル電卓 人気
- ダイクストラ最短経路電卓
- エントロピー電卓
- 誤差関数電卓
- オイラーのトーシェント関数電卓
- 指数減衰電卓(高精度)
- 指数成長電卓 高精度
- 指数積分電卓
- 指数計算 人気
- 拡張ユークリッドアルゴリズム電卓
- 階乗電卓 人気
- ガンマ関数電卓
- 黄金比電卓
- グラフ彩色電卓 新しい
- グラフ次数列バリデーター
- 群論の位数電卓 新しい
- 半減期電卓
- ハミルトン路チェッカー 新しい
- 包除原理電卓 新しい
- カルノー図 (K-Map) ソルバー 新しい
- 線形計画法ソルバー 新しい
- マルコフ連鎖定常分布電卓
- 最小全域木電卓
- モジュラー冪乗計算機 新しい
- モジュラー乗法逆数電卓
- 負の二項分布電卓 新しい
- ネットワークフロー電卓最大フロー 新しい
- パーセント成長率電卓 人気
- 順列電卓
- 重複順列電卓 新しい
- 鳩の巣原理電卓
- 平面グラフ判定 新しい
- ポアソン分布電卓
- 多項式の根電卓と詳細なステップ
- 原始根電卓
- 確率電卓
- 確率分布電卓
- 比例式計算機
- 二次式電卓
- 環と体の電卓 新しい
- 四捨五入電卓 新しい
- 関数電卓 人気
- 科学表記法電卓
- 集合論電卓
- 有効数字電卓 新しい
- 安定結婚問題ソルバー 新しい
- スターリング数電卓
- 立方和電卓
- 正の整数の電卓
- 平方和の計算
- トポロジカルソート電卓 新しい
- 巡回セールスマン問題ソルバー TSP 新しい
- 真理値表ジェネレーター
- ベン図ジェネレーター3集合