NAND(語源:Not And)とは、論理回路のひとつである。
入出力
入力a
|
入力b
|
出力
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
0
|
C言語での記法
C言語の論理演算にNAND演算子は存在しないので以下のように記述する。
!(a & b)
NANDがあれば何でもできる
すべての論理回路はNANDの組み合わせで表現できる。
NOT(a ) = NAND(a,a)
AND(a,b) = NOT(NAND(a,b))
OR (a,b) = NAND(NOT(a), NOT(b))
XOR(a,b) = NADN(NAND(a,NAND(a,b)),NAND(b,NAND(a,b)));
この理論をもとにハードウェア化されたのが「FPGA」である。