It has come to my attention that I am talking over a lot of heads on this blog. I will be doing my best to bring my readership up to speed by posting previous labs (as time allows) so that you the reader will at least get why the info is important, even if the process doesn’t make a terrible amount of sense.

Allow me, for a few minutes, to explain the very background of the engineering in these circuit labs.

In the mid 1800’s a man by the name of George Boole, who was fascinated by number theory, created what is now known as Boolean Logic. This system strives to translate all algebra and arithmetic into a two value system with simple operators. As is widely trivial knowledge today, all computers work in binary (a system of 0’s and 1’s), and therefore uses Boolean logic to actually function.

Why Boolean and why binary? Well, as Murphy’s Law dictates; the more moving parts, the more likely the system will fail. So why do operations in this crazy math system? With only two possible outcomes and further cooperation at the atomic level (with magnetism and “spin”) then Boolean algebra is the only real choice.

I will explain the processes further in other labs, but I will try to do a brief overview.

**Binary:**

There are a few theories in Binary that need to be covered before we continue. Mainly, translating numbers into and out of binary. Let us start with base 10 (decimal) which we are all familiar with. First, start with a number, like 425. When you say it aloud, it’s four hundred-twenty-five. This can also be construed as (4×100 + 2×10 + 5×1). Binary is much the same, but smaller. So, if your number is 110100111, then you just work down the line in powers of 2. So 110100111 is 1×1 + 1×2 + 1×4 + 0x8… and so on, returning 423.

Also in computer-speak, shorthand for binary comes in incredibly useful. The two most common are octal (base 8) and hexadecimal (base 16).

To convert from binary to octal, just group numbers by 3’s. So 110100111 becomes 110 100 111 and then translates to 6 4 7.

To convert from binary to hexadecimal, group numbers by 4’s. So 110100111 becomes 0011 1010 0111 which then is translated to 3 A(9+1=A) 7.

These shorthand translations come in incredibly useful when trying to simplify keystrokes for instance, seeing as they are all handled by ASCII code. There are other uses, but it comes down to hex or oct are just ways to shorten code.

**Boolean**

With Boolean algebra, there are 4 operators.

NOT: this inverts the input given. If input is 1, then output will be 0. This operation can be drawn as a prime mark (‘) or a bar over the input.

AND: This operator handles a situation that is true for both inputs. Usually this is modeled by “multiplication” or a V.

OR: This operator handles situations where ANY input is

true. Usually this is modeled by “addition” or an inverted V. This is, in general terms, like the opposite of AND.

XOR: The last combination required. This handles variables when you only care if ONE of them is 1. This is usually shown by a

circled plus sign.

This all may sound confusing… and I will agree. These are just the basics and raw facts. More info can be found on wikipedia and other online sources. I will be explaining their uses and implementations further in other lab reports, seeing as information without context is useless.

Until next time,

~Locke

## Leave a Reply