einarvalur.co

Micro Controller : Logical Components

Logic gates can be configured in such a way that they perform meaningful logical or mathematical operation.

Adding binary numbers.

An XOR and an AND gate can be configured to compute a sum of two binary numbers. As a refresher, here are the first ten values in decimal and binary.

decimal binary
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
8 1000
9 1001

Half-Adder.

Adding two binary numbers by hand will yield:

A   B carry sum decimal
0 + 0 - 0 0
0 + 1 - 1 1
1 + 0 - 1 1
1 + 1 1 0 2

Ignoring the carry-over number, the Truth Table for Exclusive OR emerges:

A B A ⊕ B
0 0 0
0 1 1
1 0 1
1 1 0

Only focusing on the carry-over number, the Truth Table for AND emerges:

A B A ⋀ B
0 0 0
0 1 0
1 0 0
1 1 1

The complete Truth Table for adding two numbers becomes:

A B A ⊕ B A ⋀ B A + B
0 0 0 0 00
0 1 0 1 01
1 0 0 1 01
1 1 1 0 10

This can be expressed in with the following circuit.

Click the buttons next to the A and B labels to represent 1 (one) or 0 (zero). Black represents 0 (zero) and orange represents 1 (one).

Full-Adder

While the Half-Adder accepts two values: A and B and returns two values: Sum and Carry. A Full-Adder accepts A and B as before but also the Carry from a previous calculation. This circuit is a some what more complicated but still simple enough for you to follow the orange anf black lines.

Chaining Adders

Half-Adder and any number of Full-Adders can be chained together to compute a larger value.

This interactive allows for adding of two 4-bit numbers. The result is stored in a 4-bit number as well. Toggle the blue circles to indicate 1 or 0 values. Pay special attention to the carry-bit that goes from one adder to the other from right to left when applicable.

Multiplexer.

Ayx + Byx + Cyx + Dyx