
ITパスポートの勉強を始めた文系です。
論理演算のところで分からない部分があったため質問させていただきます。
問題:X OR Y を NAND だけを使って表した論理式はどれかという選択式の問題で、
選択肢としては、 ア:((X NAND Y) NAND X ) NAND Y
イ:(X NAND X) NAND (Y NAND Y)
ウ:(X NAND Y) NAND (X NAND Y)
エ:X NAND (Y NAND (X NAND Y))
答え: イ
X OR Y というのは、X または Y の時に出力されるということだと思いますが、
これを NAND で解釈する場合は、どのようになるのでしょうか。
お答えいただければ幸いです。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
X OR YをNANDで表したいのですからAND条件を見つけます。
X OR Yの見方をかえれば
X=0かつY=0なら0
ということは
X OR Y=NOT((NOT X) AND (NOT Y))
NOT XはX NAND X、NOT YはY NAND Y
ですね
NANDはAND NOTですから
X OR Y = (X NAND X) NAND (Y NAND Y)
となります
ご返信いただきありがとうございます。
とても分かりやすいご回答で理解できたと思います。
NOT X AND NOT Y というのが、
下記の論理値表となると思います、
X Y 出力
------------
1 1 0
1 0 0 ←これをNANDで反転させたい
0 1 0 という理解で大丈夫でしょうか
0 0 1
No.2
- 回答日時:
> (X NAND X) NAND (Y NAND Y)を論理値表で表すと下記のようになります。
あなたが書いた真理値表は正しくありません。正しくは、
X Y 出力
------------
1 1 1
1 0 1
0 1 1
0 0 0
X NAND XはXを反転しています。Y NAND Yも同様にYを反転しています。
従って、X=1あるいはY=1の時には、(X NAND X) NAND (Y NAND Y)は
NANDへの入力のどちらか、または両方が0となり、出力は1になります。
X=0かつY=0のときのみ、1 NAND 1となり、出力が0になります。
NANDは両方の入力が1のときのみ0を出力することに留意して、もういちど考えてみることをお勧めします。
ご返信いただきありがとうございます。
論理値表を見間違えていたみたいで、
ようやく誤解を解くことが出来ました。
今回はありがとうございました!
No.1
- 回答日時:
> X OR Y というのは、X または Y の時に出力されるということ
XかYのうちどちらかあるいは両方が1であれば1を出力します。言い換えれば、X,Yどちらも0の時のみ0を出力する。
>これを NAND で解釈する場合は、どのようになるのでしょうか。
「これ」というのは、X NAND Yのことですか、それとも(X NAND X) NAND (Y NAND Y)のことですか?
前者なら、NANDはANDの出力を反転したものなので、X, Y両方が1の時のみ0を出力。
後者はX OR Yと等価なので、最初に書いた通りX, Yのどちらかまたは両方が1のときに出力が1となる。
ご返信いただきありがとうございます。
これ、という曖昧な書き方をしてしまい申し訳ありません。
質問の意図としては、(X NAND X) NAND (Y NAND Y)が、
なぜ、X OR Yを表した論理式になるのか理解できておりませんでした。
spookyactionさんの解答で,(X NAND X) NAND (Y NAND Y)の意味を、
理解することはできたのですが、なぜ X OR Yの論理式に値しているのか理解できませんでした。
改めて問われていることは、「X OR Y を NAND だけを使って表した論理式はどれかという問題です。」
(X NAND X) NAND (Y NAND Y)を論理値表で表すと下記のようになります。
X Y 出力
------------
1 1 0
1 0 1
0 1 1
0 0 1
X OR Y を論理値表で表すと次の通りとなっております。
X Y 出力
------------
1 1 1
1 0 1
0 1 1
0 0 0
論理値表を見ると分かると思うのですが、出力結果が互いに異なっているのですが、そもそも今回の問題では何を求めているのでしょうか。
根本的な質問になってしまい申し訳ございません。
長文になってしまいましたが、改めてお答えいただければ幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
処理を止める関数
-
¥マークを出力したいがバック...
-
CSV出力にHTMLが入ってしまう
-
PHPSpreadsheetによる書き出し...
-
phpのheader("Location:#pos")...
-
PHPのif文でその処理を途中で抜...
-
.htaccessにphp_valueが使用できな
-
mysql→EUC-JP、php→UTF-8の時の...
-
2つの画像ファイルが異なるファ...
-
require_once()でファイルが読...
-
phpの中でphpを書けないか
-
FTPコマンドでディレクトリごと...
-
MkDir関数
-
【file_exists】ファイルが存在...
-
sqlで日付が一番古いデータの月...
-
フォームで戻った際に入力済み...
-
<A href ~ と一緒に値を渡すには
-
テレメールとは?
-
「クラス関数」「メンバ関数」...
-
Makefile.inとMakefile.am
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ob_end_clean と ob_clean の違...
-
CSV出力にHTMLが入ってしまう
-
GDで生成したはずの画像が文字...
-
Wordpress、カスタム投稿の管理...
-
mPDFでのPDF出力がうまくいかな...
-
phpにcssを適応させたい...
-
PHPで`headers already sent`と...
-
PHP/phpMyAdmin/データベースな...
-
TCPDFについて
-
PHPで取得したHTML内のdiv要素...
-
リダイレクト元のURLの取得方法...
-
ImageStringで日本語表示させたい
-
PHPにおける時間計算、時間足し...
-
PHPで五角形、または多角形のグ...
-
JavaScriptからPHP呼び出しHTML...
-
warningを画面に表示させない設...
-
CGIからPHPへの書き換え
-
FeedPHPでfeedをHTML表示を11個...
-
【smarty】<A href="">内でのみ...
-
PHPをSJISでやるのは不可能
おすすめ情報