否定論理積(NAND)は、与えられた複数の
命題のうち、少なくとも一つが偽(False)である場合に真(True)となる
論理演算です。これは、AND演算の結果を
否定(NOT)したものと考えることができます。NANDは、Not ANDの略で、一般的に「ナンド」と発音されます。また、シェファーの棒記号「|」や
矢印「↑」で表記されることもあります。これらの記号は、1913年にヘンリー・シェファーによって導入されました。
NAND演算の重要な性質の一つに、
完全性があります。完全性とは、ある限られた種類の
論理演算の組み合わせによって、任意の
ブール関数を構成できることを指します。ANDとOR演算だけでは完全性を満たせませんが、NOT演算を加えることで完全になります。さらに、NAND演算はそれ単独で完全性を持ちます。これは、NAND演算を組み合わせることで、他の全ての
論理演算(NOT、AND、OR)を表現できることを意味します。以下に、NAND演算を用いたNOT、AND、ORの構成を示します。
- - NOT A = A NAND A
- - A AND B = NOT ( A NAND B ) = ( A NAND B ) NAND ( A NAND B )
- - A OR B = ( NOT A ) NAND ( NOT B ) = ( A NAND A ) NAND ( B NAND B )
真理値表
否定論理積の真理値表は以下の通りです。
A | B | A NAND B |
---|
:-- | : | :- |
True | True | False |
True | False | True |
False | True | True |
False | False | True |
この表からわかるように、AとBの両方が真の場合のみ、A NAND Bは偽となります。それ以外の場合は真です。
否定論理積を
ベン図で表現すると、AとBの重なり部分以外の領域が塗られます。
[否定論理積の
ベン図イメージ]
応用
NANDゲートは、デジタル回路の基本要素として広く利用されています。
NANDゲートを組み合わせることで、コンピュータのCPUやメモリなど、あらゆるデジタル回路を構築することができます。
NANDゲートは、他の論理ゲートよりも回路をシンプルにできるため、集積回路の設計において非常に重要な役割を果たしています。
関連事項