「NAND論理回路」の版間の差分

提供:MonoBook
ページの作成:「'''NAND'''(語源:Not And)とは、論理回路のひとつである。 == 入出力 == {| class="wikitable" |+ !入力a !入力b !出力 |- |0 |0 |1 |- |0 |1…」
 
30行目: 30行目:


== NANDがあれば何でもできる ==
== NANDがあれば何でもできる ==
すべての論理回路はNANDで表現できる。
すべての論理回路はNANDの組み合わせで表現できる。
  NOT(a  ) = NAND(a,a)
  NOT(a  ) = NAND(a,a)
  AND(a,b) = NOT(NAND(a,b))
  AND(a,b) = NOT(NAND(a,b))
36行目: 36行目:
  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]]」である。
この理論をもとに[[ハードウェア]]化されたのが「[[FPGA]]」である。

2022年6月2日 (木) 05:52時点における版

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」である。