Transcript Slide 1
Computer Systems 1
Fundamentals of Computing
Computer Logic
CS1: Week 18
What’s Logic?
Truth Tables
Simple Logic Gates
Simple Logic Circuits
Other Logic Gates
Other Logic Circuits
Computer Systems 1 (2004-2005)
What’s Logic?
“The grand aim of all science is to cover the greatest number of empirical facts by
logical deduction from the smallest number of hypotheses or axioms.”
“Against logic there is no armor like ignorance.”
Samuel Butler (1835 - 1902)
“Somebody who thinks logically is a nice contrast to the real world.”
Oliver Wendell Holmes Jr. (1841 - 1935)
“Logic is like the sword--those who appeal to it shall perish by it.”
Laurence J. Peter (1919 - 1988)
“A page of history is worth a pound of logic.”
Albert Einstein (1879 - 1955)
The Law of Thumb
“Insanity is often the logic of an accurate mind overtaxed.”
Oliver Wendell Holmes (1809 - 1894)
Computer Systems 1 (2004-2005)
It’s Logical, Captain...
Logic is concerned with conditions
Conditions are either achieved or not achieved
There are two states used within logic:
True
False
This could also be thought on as:
ON and OFF
1 and 0
YES and NO
Computer Systems 1 (2004-2005)
It’s Logical, Captain...
Logic is used in a variety of situations, most
importantly:
Real life situations
Inside the computer
To perform logical and arithmetic functions
Real life logical situations:
There’s a buzzer in your car that sounds when the headlights
are on and the door is open
The fire alarm installed in your home will go off if it senses
heat or smoke
If I’m not tired then I will go to the pub tonight
Computer Systems 1 (2004-2005)
Logic Gates
Each logic gate has it’s own features:
Symbol
Boolean Algebraic Expression
Truth Table
Gates can be used to build logic circuits
Nothing to do with Bill GATES
Even more thankfully, nothing to do with Gareth GATES
Each gate has a number of inputs and outputs
Usually multiple inputs and ONE output
Circuits can be created to perform situation testing and
produce and output
Computer Systems 1 (2004-2005)
Truth Tables
Truth tables are used to represent the
functionality of a logic gate or circuit
Truth tables are constructed by analysing all
possible combinations of values that can be
sent to a logic gate or circuit
All possible outputs are then calculated
Truth tables allow us to show the functionality
of a logic gate or circuit
We can also derive expressions and simplify
complex circuits by analysing the truth tables
More on that next week
Computer Systems 1 (2004-2005)
Boolean Algebra
Named after George Boole
English Mathematician
Provides a method to express functions and
transforms using logical variables
Commonly letters of the alphabet
A, B, D, X, Y, Z, etc.
E.g.- X + Y = Z
Logic gates and circuits work on the principles of
Boolean logic
In the computer TRUE or FALSE is represented by a high or low
voltage
1 or 0
Computer Systems 1 (2004-2005)
AND Gate
Two or more inputs
All inputs must be true to produce
a true output
E.g.- A AND B must be true
All other combinations between inputs result in a false
output
Boolean expression for AND
X Y OUT
gate with 2 inputs (X AND Y):
0 0
0
X•Y
0
1
1
Computer Systems 1 (2004-2005)
1
0
1
0
0
1
OR Gate
Two or more inputs
At least one input must be true to
produce a true output
E.g.- A OR B must be true
Both inputs being true result in a true output
Boolean expression for OR
gate with 2 inputs (X OR Y):
X Y
0
0
1
1
X+Y
Computer Systems 1 (2004-2005)
0
1
0
1
OUT
0
1
1
1
NOT Gate
Usually only one input
The value of the input is inverted
TRUE becomes FALSE
FALSE becomes TRUE
E.g.- A is NOT true/false
Boolean expression for OR gate with 1 input
(X):
X
Sometimes ~X
X
0
1
Computer Systems 1 (2004-2005)
OUT
1
0
Simple Logic Circuits
Circuits comprise of one or more logic gates
Gates are joined together
Usually the process flow moves left to right
Truth tables can be constructed for circuits
Helped by deriving Boolean algebra expressions for
gates and the output of the circuit
Circuits are used to construct useful logical
processes
The computer (CPU) is a complex logic circuit
Computer Systems 1 (2004-2005)
Simple Logic Circuits
E.g.-
What’s the truth table?
Computer Systems 1 (2004-2005)
A
0
0
1
1
B
0
1
0
1
OUT
1
0
0
1
Simple Logic Circuits
E.g.-
OUTPUT= A+B + A•B
A
0
0
1
1
B
0
1
0
1
A+B A•B ~(A+B) ~(A+B) + A•B
0
0
1
1
1
0
0
0
1
0
0
0
1
1
0
1
What’s the truth table?
Computer Systems 1 (2004-2005)
NAND Gate
NAND
NOT AND
Two or more inputs
If all inputs are true then output is false (0)
All other combinations between inputs result in a true
output
X Y OUT
Boolean expression for NAND
gate with 2 inputs (X NAND Y):
0 0
1
X•Y
0
1
1
Computer Systems 1 (2004-2005)
1
0
1
1
1
0
NOR Gate
NOR
NOT OR
Two or more inputs
At least one input must be true to produce a false (0)
output
If both inputs are false then output
X Y OUT
becomes true
0 0
1
Boolean expression for NOR
gate with 2 inputs (X NOR Y):
0 1
0
X+Y
1
1
Computer Systems 1 (2004-2005)
0
1
0
0
XOR Gate
XOR
Exclusive OR
Sometimes EOR
Two or more inputs
Inputs must be different to produce a true output
Both inputs being true or false
X Y OUT
result in a false output
0 0
0
Boolean expression for XOR
gate with 2 inputs (X XOR Y):
0 1
1
X•Y + X•Y
1
1
Computer Systems 1 (2004-2005)
0
1
1
0
XNOR Gate
XNOR
Exclusive NOR
Two or more inputs
One input must be true to produce a false output and
both inputs must be different
Both inputs being true or false
X Y OUT
result in a true output
0 0
1
Boolean expression for XNOR
gate with 2 inputs (X XNOR Y):
0 1
0
X•Y + X•Y
1
1
Computer Systems 1 (2004-2005)
0
1
0
1
Other Logic Circuits
Simplify last circuit using NOR gate
Becomes:
Computer Systems 1 (2004-2005)
Other Logic Circuits
E.g.-
X
Y
Z
OUTPUT= X•Y + (Y•Z + Y•Z)
Computer Systems 1 (2004-2005)
Other Logic Circuits
X
Y
E.g.-
Z
X
0
0
0
0
1
1
1
1
Y
Z
~(X•Y)
Y•~Z + ~Y•Z
~(~(X•Y) + (Y•~Z + ~Y•Z))
0
0
1
0
0
0
1
1
1
0
1
0
1
1
0
1
1
1
0
0
0
0
1
0
0
0
1
1
1
0
1
0
0
1
0
1
1
0
0
1
Computer Systems 1 (2004-2005)
Do you know anything now?
What’s Logic?
Conditions
Truth Tables
Simple Logic Gates
AND
OR
NOT
Simple Logic Circuits
Other Logic Gates
NAND
NOR
XOR
XNOR
Other Logic Circuits
Computer Systems 1 (2004-2005)