「NAND」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
 
(同じ利用者による、間の2版が非表示)
1行目: 1行目:
'''NAND'''(語源:Not And)とは、[[論理回路]]のひとつである。
+
'''NAND'''(語源:Not AND、読み:なんど)とは、[[論理回路]]のひとつである。
  
 
== 入出力 ==
 
== 入出力 ==
31行目: 31行目:
 
== NANDがあれば何でもできる ==
 
== NANDがあれば何でもできる ==
 
すべての論理回路はNANDの組み合わせで表現できる。
 
すべての論理回路はNANDの組み合わせで表現できる。
 +
この理論をもとに[[ハードウェア]]化されたのが「[[FPGA]]」である。
 +
 
[[NOT]]
 
[[NOT]]
 
  NOT(a) = NAND(a,a)
 
  NOT(a) = NAND(a,a)
40行目: 42行目:
 
  XOR(a,b) = NADN(NAND(a,NAND(a,b)),NAND(b,NAND(a,b)));
 
  XOR(a,b) = NADN(NAND(a,NAND(a,b)),NAND(b,NAND(a,b)));
  
この理論をもとに[[ハードウェア]]化されたのが「[[FPGA]]」である。
+
== 関連項目 ==
 +
* [[NAND型フラッシュメモリ]]
 +
* [[FPGA]]

2022年6月2日 (木) 06:04時点における最新版

NAND(語源:Not AND、読み:なんど)とは、論理回路のひとつである。

入出力[編集 | ソースを編集]

入力a 入力b 出力
0 0 1
0 1 1
1 0 1
1 1 0

C言語での記法[編集 | ソースを編集]

C言語論理演算にNAND演算子は存在しないので以下のようにANDNOTの組み合わせで記述する。

!(a & b)

NANDがあれば何でもできる[編集 | ソースを編集]

すべての論理回路はNANDの組み合わせで表現できる。 この理論をもとにハードウェア化されたのが「FPGA」である。

NOT

NOT(a) = NAND(a,a)

AND

AND(a,b) = NOT(NAND(a,b))

OR

OR(a,b) = NAND(NOT(a), NOT(b))

XOR

XOR(a,b) = NADN(NAND(a,NAND(a,b)),NAND(b,NAND(a,b)));

関連項目[編集 | ソースを編集]