• ベストアンサー

論理回路で困っております

論理回路の問題をいくつか解いて大体は解けたのですが、以下の2問が全くわからず困っております。 (1)半加算器をNANDのみで回路を作成せよ。 (2)A,B,C,Dの4者の多数決回路を考え、順序立てて説明せよ。 どうかご教授いただけないでしょうか。 よろしくお願い申し上げます。

質問者が選んだベストアンサー

  • ベストアンサー
  • info33
  • ベストアンサー率50% (260/513)
回答No.2

(1) x1=not(AB) x2=not(Ax1) x3=not(Bx1) 和:S0=not(x2x3) 桁上げ:C0=not(x1x1) (2) 1が多数のとき X=1, Y=0 0が多数のとき X=0, Y=1 0,1が同数のとき X=0, Y=0 とすると X=ABC+ABD+BCD+ACD Y=not(A+B+C)+not(A+B+D)+not(B+C+D)+not(A+C+D)

その他の回答 (1)

  • mdmp2
  • ベストアンサー率55% (438/787)
回答No.1

半加算器の回路というのを知りませんでしたが、調べてみるとつぎのようなものでした。 https://ja.wikipedia.org/wiki/%E5%8A%A0%E7%AE%97%E5%99%A8 ANDゲート2個、ORゲート1個、インバータ(NOT)一個で構成されています。 これらをNAND ゲートのみで構成すればいいのです。 ANDゲートは、NANDゲートの出力に、インバータ(1個のNANDゲートの2つの入力をパラ接続)を接続した回路で置き換えることができます。 ORゲートは、NANDゲートのそれぞれの入力にインバータ(1個のNANDゲートの2つの入力をパラ接続)を接続した回路で置き換えることができます。(ド・モルガンの法則 を参照) NAND で置き換えた回路を完成させてください。その上で、ゲート数を少なくすることができるかどうか考えてください。 例えば、回路図のA,B が入力されているANDゲートをNAND + インバータ(NANDをインバータとして使用)に置き換えて見ると、次段のNAND の前に接続されているインバータが不要になります。そのかわりに、Carry Out へはインバータが必要です。 ABCD の多数決回路は、ABCD の真理値表を作り ABCD OUT 0001 0 0010 0 0011 0 0100 0 0101 0 0110 0 0111 1 1000 0 1001 0 1010 0 1011 1 1100 0 1101 1 1110 1 1111 1 出力が1になる場合をゲートで実現すれば良いです。