You will encounter digital circuits multiple times in any given day. Digital circuits have infiltrated society in ways unheard of only a few decades ago. They are everywhere and seem to be in everything. Without them we would have no microprocessors. Without microprocessors we would have no computers or smartphones or sophisticated fifth-generation fighter jets or even something as simple and convenient as a coffee maker that brews the coffee before we wake up that shuts off automatically when we forget to turn it off. Maybe we could still design a coffee maker with an analog clock with a mechanical switch that will shut off the hot plate when the clock advances forward past a mechanical set point, but the point is that these little devices (digital circuits) are commonplace and here to stay.

Digital circuits are comprised of tiny little on/off switches called transistors. The transistor is the building block of all digital circuits. This revolutionary little switching device was invented in 1947 and its creators were awarded the Nobel Prize in Physics a few years later, and rightly so. Only a few other inventions have impacted and affected our lives in so many ways.

Transistors can be organized into logic gates. The most basic gates are AND, OR and NOT. With these fundamental gates, all other gates can be built. Boolean algebra describes logic gates in symbolic form which gives a designer the ability to design a complicated logic circuit using math by forming equations. These equations are directly transformed into logic symbols and into a logic circuit. Connecting several logic gates together forms something called combinational logic. With this combinational logic, adders can be fabricated as well as encoders, decoders, multiplexers and demultiplexers. A multiplexer is a device that allows one input to be selected from several inputs. An arithmetic logic unit (ALU) is a multiplexer which is at the heart of a microprocessor's core.

This course is intended to be a review of the basics of digital logic starting with the binary numbering system, hexadecimal numbering system, logic gates, and logic circuits. This course will go over the basic logic gates, adders, decoders, encoders, multiplexers, and demultiplexers. This course has a lot of sample problems and teaches by showing examples.

This course teaches the following learning objectives:

- How to convert a decimal number to a binary number (and vice versa)
- How to convert a decimal number to a hexadecimal number (and vice versa)
- How to represent a negative number in binary
- How to simplify a Boolean expression using Boolean algebra theorems and laws
- How to simplify a Boolean expression using Karnaugh maps
- The difference between all of the basic logic gates
- How basic logic gates can be implemented using transistors
- How to create any logic gate using only NAND gates
- How to implement an adder
- How to implement a decoder
- How to implement an encoder
- How to implement a multiplexer
- How to implement a demultiplexer