• 締切済み

論理式の求め方

A,B,C,Dの4つの入力と出力Yで、入力に1の数が2個の時は0、それ以外の時は1を出力する論理回路についてNOTとANDだけの論理式にしたいのですが、どうしても簡単化をしてまとめることができません。わかるかたがいればぜひおしえて下さい。よろしくお願いします。

みんなの回答

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

カルノー図を書いてみたけど、とくに簡略化できるところはなさそう。 ということで、そのまま項を列挙するだけで良いと思います。 以下検証: %cat a.rb bool = [false, true]; bool.each do |a| bool.each do |b| bool.each do |c| bool.each do |d| r = !(!a & !b & c & d) & !(!a & b & !c & d) & !(!a & b & c & !d) & !(a & !b & !c & d) & !(a & !b & c & !d) & !(a & b & !c & !d); print a ? '+' : '-'; print b ? '+' : '-'; print c ? '+' : '-'; print d ? '+' : '-'; print ' = ', r, "\n"; end end end end %ruby a.rb ---- = true ---+ = true --+- = true --++ = false -+-- = true -+-+ = false -++- = false -+++ = true +--- = true +--+ = false +-+- = false +-++ = true ++-- = false ++-+ = true +++- = true ++++ = true % 一応、NOTとANDの論理ゲートだけで構成できてるかと。

marukosan
質問者

お礼

おそくなりましたが大変参考になりました。 ありがとうございました。

関連するQ&A

  • 4入力XORの論理式

    4入力XOR A【XOR】B【XOR】C【XOR】D この式のカルノー図を描くと 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 というように0と1が並びます。 これを簡単化出来るのなら なるべく簡単化して、XORを使わない 論理式を出したいのですがどうすればいいですか? そのあと、74シリーズのIC(OR、AND、NOT、NANDだけ) をつかって実体回路図を描くので論理式は出来るだけ 簡単にお願いします。

  • 論理式の簡単化

    論理式の簡単化 論理式の簡単化 (¬A)(¬B)CD + (¬A)B(¬C)D + (¬A)BC(¬D) + A(¬B)(¬C)D +A(¬B)C(¬D) + AB(¬C)(¬D) という式なのですが、カルノー図を使ってもどうやっても簡単化できません。(¬)はNOTのことです。 もうこれは、簡単化できないものなんでしょうか? 見づらくてもうしわけありません。 どなたかご教授ください。

  • 論理回路

    簡単な問題だと思うんですが、まったく分からないのでおしえてください。 1.ド・モルガンの定理を用いて次の式をANDとNOTだけ、またはORとNOTだけで表す。 (1) A・(B+C) (2) A・(~B)+(~A)・B 2.次の論理式表す論理回路を表す論理回路を2入力NANDだけでつくる。 A・(~B)+(~A)・B 以上です。 一応、1の(1)、(2)は自力でやって (1)=~{(~A・B)・(A・~B)} (2)=~(~A+B+A+~B) だったんですが、まちがってないですか? 2番の問題はわからないんでお願いします。

  • 論理式 簡単化2

    3入力1出力の論理回路を真理値表を用いて、論理式と論理回路の図示がわからないので、 教えてください。また、その論理式が簡略化出来た時の論理式と論理回路も教えてください。 真理値表(左の3ケタの数値が入力、右の数値が出力を表している。) 000 0 001 0 010 1 011 0 100 0 101 1 110 0 111 1

  • 論理式 簡単化

    論理式Y=(A・B・C+A^)A2重^・C^+A^・B・Cを簡単化する方法がわからないので、 教えてください。ちなみに、^はバーを表しています。 また、簡単化した論理回路と真理値表も教えてください。 ちなみに、NANDゲートのみで構成した場合でお願いします。

  • 論理式の簡略化。

    L=A・(B・D+D¯・A)・{(C¯+A)・B+B¯} □¯はnot回路です。 上の式の簡略化の過程を教えてください。 お願いします。

  • 論理式

    (1)∃x ∀y[A(x) ∧ (B(y)→C(x,y))] (2)∀x ∀y[A(x) → (D(y)→¬C(x,y))] (3)∀x[B(x)→¬D(x)] (1)(2)を仮説として(3)の論理式を導出原理を用いて証明するにはどうしたら良いか。

  • カルノー図を用いた論理式の簡単化

    閲覧ありがとうございます。 電気回路の問題でどうしてもわからないところがあったので、質問させてもらいます。 問.符号(ABCD)について、(0000)、(0101)、(1111)、(1010)が起こり得ないとして、カルノー図を用いて次の論理式を簡単化しなさい。 Z=A^B^C^D+A^BC^D+ABC^D+A^BCD (※便宜上、^をNOTとする。ex)A^B=A(NOT)B ) これを本来の解き方をすれば図の様になります。ここから先のやり方が分からなく、困っています。

  • ディジタル回路の論理式の簡単化について。

    ディジタル回路の論理式の簡単化について。 今ある問題で簡単化の途中で迷っています。 簡単化すると次のうちどれかになるそうです。 (ア)Y=A^+C (イ)Y=A+C (ウ)Y=A・C+A^・B^・C^   (エ)Y=A・C+A^・B・C 私は今カルノー図で【 Y=A^・B^・C^+B・C+A・C 】という式を導いたのですが、 ここからどう式変形すれば上記の答えになるのかわかりません。 それともこの導いた式が間違っていますか?この式から変形できるなら方法を教えていただきたいです。

  • 7セグメントのディスプレイの論理回路の課題について

    図1に表す順序回路を作りたい。 この回路は入力としてReset信号とクロック信号があり、出力として7セグメントのディスプレイがある。 回路の中央部が4つの状態を持ち、クロック信号の立ち上がりの時のみ状態遷移を行い、各状態に対応した10進数の数字を2進コードX1,X2,X3,X4(X1が上位)でディスプレイ・デコーダへ出す。 デコーダは2進数を入力として、入力を表す10進数の数字をディスプレイに表示するための出力a,b,c,d,e,f,gを出す。 ディスプレイは7セグメントa,b,c,d,e,f,gよりなり、それぞれ信号a,b,c,d,e,f,gガ1の時光る。 今は、自分の学籍番号(最後の4桁今回は1089)を状態10進コードとする。 入力Resetが1なら初期状態(A3)になる。その以外はクロック信号の立ち上がりにより(A3→A4→A5→A6→A3・・・のパターンで)状態遷移する。 クロック信号が立ち上がらないときは、回路の現状態が保持されている。 この回路をポジティブエージ型Dフリップフロップによって構成せよ。 そこで以下の設問すべてに答えなさい。 (1)ムーアが型順序機械に基づく、中央部の状態遷移図と状態遷移表を求めよ。 (2)中央部の拡大要求表を作成し、カルノー図により簡単化し、各フリップフロップの入力方程式を求めよ。 (3)現状態を入力とし、a,b,c,d,e,f,gを出力とする7セグメントデコーダ真理値表を書け(空欄を埋めよ)。 (4)出力a,b,c,d,e,f,gの論理関数を、それぞれカルノー図を用いて簡単化せよ。ただし、論理簡単化の際にはドントケーアを利用すること。 (5)入力方程式と出力式をAND-OR-NOTゲートとDフリップフロップで構成を求めよ。 の問題をかなりの期間考えてるのですがわかりません。  教えてください。