Combinational Logic:
[Basic Gates]
[Derived Gates]
[The XOR Function]
[Binary Addition]
[Multiplexer]
[Decoder/Demultiplexer]

Sequential Logic:
[RS NAND Latch]
[Clocked RS Latch]
[RS Flip-Flop]
[JK Flip-Flop]
[D Latch]
[Flip-Flop Symbols]

Counters:
[Basic 4-Bit Counter]

Registers:
(Coming Soon)

Return to Digital index page.

Return to Play-Hookey Home Page.

**New, due to popular request!** I have received a number of
questions regarding the internal structure and operation of logic gates.
This is not as simple as it may seem, because there are many different
ways to implement logical functions electronically. Therefore, I am now
adding some new pages on the major logic
families and their internal operation.

Digital or binary logic has fascinated many people over the years. The very idea that a two-valued number system can possibly be the basis for the most powerful and sophisticated computers seems astounding, to say the least. Nevertheless, it is so, and the how and the why of this requires some explanation.

Everything in the digital world is based on the binary number system. Numerically, this involves only two symbols: 0 and 1. Logically, we can use these symbols or we can equate them with others according to the needs of the moment. Thus, when dealing with digital logic, we can specify that:

0 = false = no

1 = true = yes

Using this two-valued logic system, every statement or condition must be either "true" or "false;" it cannot be partly true and partly false. While this approach may seem limited, it actually works quite nicely, and can be expanded to express very complex relationships and interactions among any number of individual conditions.

One essential reason for basing logical operations on the binary number system is that it is easy to design simple, stable electronic circuits that can switch back and forth between two clearly-defined states, with no ambiguity attached. It is also readily possible to design and build circuits that will remain indefinitely in one state unless and until they are deliberately switched to the other state. This makes it possible to construct a machine (the computer) which can remember sequences of events and adjust its behavior accordingly.

Digital logic may be divided into two classes: *combinational
logic*, in which the logical outputs are determined by the logical
function being performed and the logical input states at that particular
moment; and *sequential logic*, in which the outputs also depend on
the prior states of those outputs. Both classes of logic are used
extensively in all digital computers.

Since both types of logic circuits begin with logic *gates* to
combine logical input signals in various ways to produce the desired
outputs, we will begin on the next page by seeing how the basic logic
gates work.

**Note:** the demonstrations on these pages are made interactive
with Javascript 1.1, as implemented in Netscape 3.0. Netscape 4 and
higher, and IE4 and higher, remain compatible. If you are using a browser
without Javascript, or if you have Javascript disabled for any reason, you
will be able to see static images, but you will not be able to interact
with them. If your browser recognizes some Javascript functions but not
the ones used here, you may get an error message. If so, simply click the
"OK" button and continue; you will also be limited to the static
display, but you will still be able to view the page.