The text below is an extract from the article at
www.hardwaresecrets.com/article/237/1
See also the Wikipedia article at
en.wikipedia.org/wiki/Logic_gate
Logic gates are
the basic components in digital electronics. Digital electronics is
based on transistor switches which are either on or off.
These two states can be used to represent the binary digits
0 and 1, and by stringing several binary digits or bits
together we can represent any whole number. For example, the binary
number 1101 is equivalent to the decimal number 13 (humans like to
use decimal numbers because humans sometimes use their ten fingers
and thumbs to count with). Before going any further in this text,
please make sure you have read my introduction to binary and
hexadecimal numbers.
In the text
below, a letter, also known as a variable, represents a
binary digit. So A can be 0 or 1. So, if A is connected to a
switch, A will be 0 when the switch is turned off and 1 when the
switch is turned on. A line drawn right above the variable name (or
a slash typed in front of the variable name) means that the variable
is inverted. S if A = 0 then /A =
1, and if A = 1 then /A = 0.
The diagrams
below show gates with only one or two inputs, but it possible to buy
gates with more than two inputs or to make them yourself by
combining simple gates together (see the article on
hardwaresecrets.com). Now that you know the basics, we can introduce
you to logic gates.
NOT (Inverter)
As
the name implies, an inverter will invert the number entered. If you
enter 0, you will get a 1 on its output, and if you enter a 1,
you will get a 0 on its output. The inverter symbol you can see on
Figure 1. An inverter is also known as a NOT gate and its output is
Y = /A.
On
the truth table below you can see a summary of how this
circuit works. Tables like this are called truth tables because
the words true and false are taken to be equivalent to the
states on and off or 1 and 0.
|
A (Input) |
Y (Output) |
|
0 |
1 |
|
1 |
0 |
|

Figure 1: NOT gate or inverter |
On
logic circuits, a o symbol is a short for inverter. You will see
that little circle on the symbols for logic gates like NAND, NOR and
XNOR.
AND
As
its name implies, an AND logic gate performs an AND logic
operation. The output of a two-input AND gate is true (or on or
1) if input A is true AND input B is true. Looking at the truth
table below you will see that the output could also be obtained by
multiplying the inputs together, so we represent the AND
operation with A·B. You can see its symbol on Figure 2 and
its truth table.
|
A |
B |
Y |
|
0 |
0 |
0 |
|
0 |
1 |
0 |
|
1 |
0 |
0 |
|
1 |
1 |
1 |
|

Figure 2: AND gate
|
Another way to understand AND logic gate: its output will only be at
1 when all its inputs are also at 1. Otherwise its output will
be 0.
NAND
The N letter on NAND stands for NOT, meaning that the NAND logic
gate is an AND gate with an inverter attached. So, its output is the
opposite from AND. Its symbol is the same of AND but with a o on
its output, meaning that the output is inverted. You can build
yourself a NAND gate by connecting an AND gate to an inverter.
|
A |
B |
Y |
|
0 |
0 |
1 |
|
0 |
1 |
1 |
|
1 |
0 |
1 |
|
1 |
1 |
0 |
|

Figure 3: NAND gate |
OR
As
its name implies, an OR logic gate performs an OR logic operation.
The output of a two-input OR gate is true if input A is true OR
input B is true (or both). Looking at the truth table below, you can
see that the output can be obtained by adding the inputs
together, EXCEPT FOR THE LAST LINE (since in binary arithmetic
1+1=11) so we use the symbol + to represent the OR gate.
So, if A and B are its inputs, at the output we will find A + B.
|
A |
B |
Y |
|
0 |
0 |
0 |
|
0 |
1 |
1 |
|
1 |
0 |
1 |
|
1 |
1 |
1 |
|

Figure 4: OR gate.
|
Another way to understand OR logic gate: its output will be true
when any input is true.
NOR
The N letter on NOR stands for NOT, meaning that NOR logic gate is
an OR gate with an inverter attached. So, its output is the opposite
from OR. Its symbol is the same of OR but with a o on its output,
meaning that the output is inverted. You can build yourself a NOR
gate by connecting an OR gate to an inverter.
|
A |
B |
Y |
|
0 |
0 |
1 |
|
0 |
1 |
0 |
|
1 |
0 |
0 |
|
1 |
1 |
0 |
|

Figure 5: NOR gate
|
Another way to understand NOR logic gate: its output will only be at
1 when all its inputs are at 0. Otherwise its output will be
0.
XOR
XOR stands for exclusive OR. XOR gate compares two values and if
they are different its output will be 1. The output of an XOR gate
is true if input A is true OR input B is true BUT NOT BOTH
(this is excluded, so the name of this gate is meaningful). XOR
operation is represented by the symbol
Ε.
So Y = A
Ε
B.
|
A |
B |
Y |
|
0 |
0 |
0 |
|
0 |
1 |
1 |
|
1 |
0 |
1 |
|
1 |
1 |
0 |
|

Figure 6: XOR gate. |
The output is 1 when the inputs have different values.
XNOR
XNOR stands for exclusive NOR and is an XOR gate with its output
inverted. (In the opinion of Mr. Ward, a better name for this type
of gate would be NXOR since this would show better that it is the
inverse of an XOR gate, N-XOR.) So, its output is at 1 when the
inputs have the same value and 0 when they are different.
|
A |
B |
Y |
|
0 |
0 |
1 |
|
0 |
1 |
0 |
|
1 |
0 |
0 |
|
1 |
1 |
1 |
|

Figure 7: XNOR gate. |
The output is 1 when all its inputs have the same value.