本文へ移動

ANDゲート(論理積)|動作・真理値表・実装・用途

すべての入力が真のときにのみ真を出力するデジタル論理ゲート。動作、表記、真理値表、一般的な実装、マスキング・制御・演算での用途、関連概念を解説します。

概要

ANDゲートは、論理積を実行する基本的なデジタル論理素子である。出力が真(1)になるのは、すべての入力が真である場合に限られる。ブール代数では、この演算は A AND B、A・B、または A ∧ B と表記され、1を真、0を偽とする2進値の乗算のように振る舞う。2入力ゲートでは規則は単純で、いずれかの入力が0なら出力は0となり、両方が1のときだけ出力は1となる。基本的な論理素子の背景については、論理ゲートの概要を参照。

画像ギャラリー

3 画像

真理値表と表記

2入力ANDゲートでは、入力の組合せは4通りあり、出力は次のとおりである。

  • 0 AND 0 = 0
  • 0 AND 1 = 0
  • 1 AND 0 = 0
  • 1 AND 1 = 1

この演算は2進算術における乗算を反映するため、A × B または A・B のように積として扱われることが多い。乗算との類推についてより広く数学的に扱うには、乗算の資料を参照できる。この類推は、基礎代数で述べられる「ゼロに何を掛けてもゼロ」という連続的な考え方にも及び、実数の乗算に見られる。

記号と変種

回路図では、ANDゲートは特徴的な記号で描かれる。一般的な米国式記号は、左側に入力、右側に出力を持つ、曲線を含むD字形の素子である。IECなどの規格では異なる図記号が用いられる。ゲートは2個以上の入力を持つことができ、多入力ANDはすべての入力が1の場合にのみ1を出力する。NANDゲートは論理積の否定(ANDのNOT)であり、NANDおよびNORゲートは機能的完全性を持ち、ほかのあらゆる論理機能を構成できるため広く使われる。

実装

AND論理は、個別トランジスタ回路、トランジスタ・トランジスタ論理(TTL)、CMOS集積回路など、多様なハードウェア形態で実現される。トランジスタレベルでは、入力を制御するすべてのトランジスタが導通状態にあるときだけ、出力への導通経路が存在するようにゲートを構成する。FPGAなどのプログラマブルデバイスでは、AND機能はルックアップテーブルまたは構成可能な論理ブロック内で実現される。

用途と例

ANDゲートの実用的な用途には、信号の有効化またはゲーティング、制御条件の組合せ、ソフトウェアおよびハードウェアにおけるビット単位演算がある。コンピューティングでは、ビット単位ANDはワード内の選択したビットをマスクし、その他をクリアする。また、1ビットの2つの加数による2進加算でキャリービットを生成する処理は、ANDで行われる。安全インターロックにもAND論理がよく用いられ、機械が始動する前に複数の条件を満たさなければならない。

関連概念と注目すべき事項

ANDは、ORおよびNOTと並ぶ基本的なブール演算子の一つである。ド・モルガンの法則は、否定を通じてANDとORを関連付ける。すなわち、NOT(A AND B) = NOT A OR NOT B である。設計者はゲートを組み合わせる際、伝搬遅延、入力負荷、ハザードといった現実の問題も考慮しなければならない。回路が適切に同期またはバッファリングされていない場合、入力の変化により一時的なグリッチが生じることがある。

入門用の図、チュートリアル、実践例については、論理ゲートとデジタル設計に関する一般的な資料を参照できる。基本ゲート算術との類推代数的基礎

タグ

関連項目

著者

AlegsaOnline.com ANDゲート(論理積)|動作・真理値表・実装・用途

URL: https://ja.alegsaonline.com/art/3867

共有