AND gate

The AND gate is a basic digital logic gate that implements logical conjunction - it behaves according to the truth table to the right. A HIGH output (1) results only if all the inputs to the AND gate are HIGH (1). If none or not all inputs to the AND gate are HIGH, a LOW output results. The function can be extended to any number of inputs.

INPUTOUTPUT
ABA AND B
000
010
100
111

Symbols

There are three symbols for AND gates: the American (ANSI or 'military') symbol and the IEC ('European' or 'rectangular') symbol, as well as the deprecated DIN symbol. Additional inputs can be added as needed. For more information see Logic Gate Symbols. It can also be denoted as symbol "^" or "&".

MIL/ANSI Symbol IEC Symbol DIN Symbol

The AND gate with inputs A and B and output C implements the logical expression . This expression also may be denoted as C=A^B or C=A&B.

Implementations

An AND gate is usually designed using N-channel (pictured) or P-channel MOSFETs. The digital inputs a and b cause the output F to have the same result as the AND function.

Analytical representation

is the analytical representation of AND gate:

Alternatives

If no specific AND gates are available, one can be made from NAND or NOR gates, because NAND and NOR gates are "universal gates," [1] meaning that they can be used to make all the others.

Desired gateNAND constructionNOR construction

IC package

AND gates are available in IC packages. The 7408 IC is a well known QUAD 2-Input AND GATES and contains four independent gates each of which performs the logic AND function.

IC 7408
gollark: It actually has a more complex spec than XML!
gollark: Did you know YAML has nine ways to do multiline strings?
gollark: Go is kind of like YAML with the whole "simple" thing - it kind of *looks* simple and easy, but it's a minefield of special cases and weirdness and problems and all the special cases make it more complex than something actually designed to be simple would be.
gollark: In cleaner and more typesafe ways.
gollark: You can use codegen to generate code for repetitive tasks of some sort if they don't need to generalize much or go outside your project, but it's much better to just... not have to do those repetitive tasks, or have the compiler/macros handle them.

See also

References

  1. Mano, M. Morris and Charles R. Kime. Logic and Computer Design Fundamentals, Third Edition. Prentice Hall, 2004. p. 73.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.