自身が躓いたポイントをもとに解説を行います.
令和4年度 秋期 応用情報技術者試験問題と解答
A,B,C,Dを論理変数とするとき,次のカルノー図と等価な論理式はどれか.
ここで,・は論理積,+は論理和,¬XはXの否定を表す.
1)以下,便宜上「¬X」をNOT Xと表記します.
ア A・B・NOT C・D + NOT B・NOT D
イ NOT A・NOT B ・NOT C・NOT D + B・D
ウ A・B・D + NOT B・NOT D
エ NOT A・NOT B・NOT D + B・D
答え. エ
前提知識
カルノー図とは?
論理回路やブール代数の簡略化(最小化)に使われる図表.
本問に際して確認してほしいポイントは以下.
- ABは00,01,11,10の順番で構成される(グレイコード:隣り合う値が1ビットだけ異なるように並べた2進数の列)
- それぞれ対応するマスに「1」または「0」が設定される
図の読み方
① 00 00に対応する値:NOT A・NOT B ・NOT C・NOT D
② 00 01に対応する値:NOT A・NOT B ・NOT C・D
...
解説
解答までのフローとしては,グループ化を行い,共通項をまとめて論理積の式を結合,和の式にする.
グループ化
以下のルールに従い,グループ化を行う.
- セルの値が1である
- グループ化するセルの数は2^nである
- カルノー図の上下の端および,左右の端は連続する
✎グループ化するセルの数が2^nの理由は?
そもそもカルノー図の目的は,論理式の簡略化です.
⇒2^n個でまとめることで,n個の変数が減ります.
✎「カルノー図の上下の端および,左右の端は連続する」とは?
緑で囲った部分に注目してください.
隣接する00 01は,1ビットだけ異なります.ほかも同様です.
⇒カルノー図の値同士も“隣接”しているとみなすことができます.
✎「隣接」しているとどうなるの?
グループ化した際、1ビットの異なりは出力に影響しなくなります.
例)1・1・0・1=1・1・1,
0・0・1・0=0・0・0
実際にグループ化を行うと以下のようになります.
✎赤枠で囲まれた値がグループ化できる理由は?
「00 00」の値と「00 10」の値は,1ビットだけ異なります.
⇒“隣接”しているとみなすことができます.
赤グループの論理式
- AB=00、CD=00 ⇒ NOT A・NOT B・NOT C・NOT D
- AB=00、CD=10 ⇒ NOT A・NOT B・NOT C・NOT D
青グループの論理式
- AB=01、CD=01 ⇒ NOT A・B・NOT C・D
- AB=01、CD=11 ⇒ NOT A・B・C・D
- AB=11、CD=01 ⇒ A・B・NOT C・D
- AB=11、CD=11 ⇒ A・B・C・D
共通項をまとめ,論理積の式を結合,和の式にする
以下となる.
NOT A・NOT B・NOT D + B・D
✎AやNOT A,NOT Cを無視してもいいの?
⇒結果に干渉しないため,無視することができます.


