Logic Gates Computer Science
Logic Gates Computer Science
3.1 Introduction
Electronic circuits in computers, many new memories and controlling devices are
made up of thousands of LOGIC GATES. Logic gates take binary inputs and produce a
binary output. Several logic gates combined together form a LOGIC CIRCUIT and these
circuits are designed to carry out a specific function.
The checking of the output from a logic gate or logic circuit is done using a TRUTH
TABLE.
This chapter will consider the function and role of logic gates, logic circuits and
truth tables. Also a number of possible applications of logic circuits will be
considered. A reference to BOOLEAN ALGEBRA will be made throughout the chapter,
but this is really outside the scope of this textbook. However, Boolean algebra will
be seen on many logic gate websites and is included here for completeness.
44
Figure 3.1 Logic gate symbols
Table 3.1 Truth tables for two, three and four inputs
45
Figure 3.2
Description:
The output, X, is 1 if:
the input, A, is 0
Truth table:
Table 3.2
Input Output
A X
0 1
1 0
Figure 3.3
Description:
The output, X, is 1 if:
both inputs, A and B, are 1
Truth table:
Table 3.3
Inputs Output
46
A B X
0 0 0
0 1 0
1 0 0
1 1 1
3.4.3 OR gate
Figure 3.4
Description:
The output, X, is 1 if:
either input, A or B, is 1
Truth table:
Table 3.4
Inputs Output
A B X
0 0 0
0 1 1
1 0 1
1 1 1
47
3.4.4 NAND gate (NOT AND)
Figure 3.5
Description:
The output, X, is 1 if:
input A AND input B are NOT both 1
Truth table:
Table 3.5
Inputs Output
A B X
0 0 1
0 1 1
1 0 1
1 1 0
Figure 3.6
Description:
The output, X, is 1 if:
neither input A nor input B is 1
48
Truth table:
Table 3.6
Inputs Output
A B X
0 0 1
0 1 0
1 0 0
1 1 0
Figure 3.7
Description:
The output, X, is 1 if:
(input A is 1 AND input B is 0)
OR
(input A is 0 AND input B is 1)
Truth table:
Table 3.7
Inputs Output
A B X
0 0 0
0 1 1
1 0 1
49
1 1 0
Activity 3.1
Find out why and both represent the
same logic gate.
(Note: the three symbols in the Boolean algebra have the following meaning:
. represents the AND operation
+ represents the OR operation
a bar above the letter, e.g. ā, represents the NOT operation.)
3.5.1 Example 1
Produce a truth table for the following logic circuit (note the use of • at junctions):
50
Figure 3.8
There are three inputs to this logic circuit, therefore there will be eight possible
binary values which can be input.
To show step-wise how the truth table is produced, the logic circuit has been split
up into three parts and intermediate values are shown as P, Q and R.
Part 1
This is the first part of the logic circuit; the first task is to find the intermediate values
P and Q.
Figure 3.9
The value of P is found from the AND gate where the inputs are A and B. The value
of Q is found from the NOR gate where the inputs are B and C. An intermediate truth
table is produced using the logic function descriptions in Section 3.4.
51
Table 3.8
Part 2
The second part of the logic circuit has P and Q as inputs and the intermediate output,
R:
Figure 3.10
This produces the following intermediate truth table. (Note: even though there are
only two inputs to the logic gate, we have generated eight binary values in part 1 and
these must all be used in this second truth table.)
Table 3.9
Inputs Output
P Q R
0 1 1
0 0 0
0 0 0
0 0 0
0 1 1
0 0 0
1 0
52
1
1 0 1
Part 3
The final part of the logic circuit has R and C as inputs and the final output, X:
Figure 3.11
Table 3.10
Inputs Output
R C X
1 0 1
0 1 1
0 0 0
0 1 1
1 0 1
0 1 1
1 0 1
1 1 0
Putting all three intermediate truth tables together produces the final truth table which
represents the original logic circuit:
Table 3.11
53
The intermediate values can be left out of the final truth table, but it is good practice
to leave them in until you become confident about producing the truth tables. The
final truth table would then look like this:
Table 3.12
Activity 3.2
Produce truth tables for each of the following logic circuits. You are advised
to split them up into intermediate parts to help eliminate errors.
a
54
Figure 3.12
Figure 3.13
55
Figure 3.14
Figure 3.15
56
Figure 3.16
3.5.2 Example 2
A safety system uses three inputs to a logic circuit. An alarm, X, sounds if input A
represents ON and input B represents OFF; or if input B represents ON and input C
represents OFF.
Produce a logic circuit and truth table to show the conditions which cause the
output X to be 1.
The first thing to do is to write down the logic statement representing the scenario
in this example. To do this, it is necessary to recall that ON = 1 and OFF = 0 and
also that 0 is usually considered to be NOT 1.
So we get the following logic statement:
Figure 3.17
The logic circuit is made up of three parts as shown in the logic statement. We will
57
produce the logic gate for the first part and the third part. Then join both parts
together with the OR gate.
Figure 3.18
Figure 3.19
Table 3.13
58
(Note: it is optional to leave in the intermediate values or to remove them giving a
four-column truth table with headings: A, B, C, X.)
Activity 3.3
Draw the logic circuits and complete the truth tables for the following logic
statements and Boolean algebra statements:
a X = 1 if (A = 1 OR B = 1) OR (A = 0 AND B = 1)
b Y = 1 if (A = 0 AND B = 0) AND (B = 0 OR C = 1)
c T = 1 if (switch K is ON or switch L is ON) OR (switch K is ON and
switch M is OFF) OR (switch M is ON)
d
e R = 1 if (switch A is ON and switch B is ON) AND (switch B is ON or
switch C is OFF)
3.5.3 Example 3
A wind turbine has a safety system which uses three inputs to a logic circuit. A
certain combination of conditions results in an output, X, from the logic circuit being
equal to 1. When the value of X = 1 then the wind turbine is shut down.
The following table shows which parameters are being monitored and form the
three inputs to the logic circuit.
Table 3.14
59
The output, X, will have a value of 1 if any of the following combination of
conditions occur:
• either turbine speed <= 1000 rpm and bearing temperature > 80°C
• or turbine speed > 1000 rpm and wind velocity > 120 kph
• or bearing temperature <= 80°C and wind velocity > 120 kph.
Design the logic circuit and complete the truth table to produce a value of X =1 when
any of the three conditions above occur.
This is a different type of problem to those covered in Examples 1 and 2. This time
a real situation is given and it is necessary to convert the information into a logic
statement and then produce the logic circuit and truth table. It is advisable in
problems as complex as this to produce the logic circuit and truth table separately
(based on the conditions given) and then check them against each other to see if there
are any errors.
Stage 1
The first thing to do is to convert each of the three statements into logic statements.
Use the information given in the table and the three condition statements to find how
the three parameters, S, T and W, are linked. We usually look for the key words
AND, OR and NOT when converting actual statements into logic.
We end up with the following three logic statements:
i turbine speed <= 1000 rpm and bearing temperature > 80°C
logic statement: (S = NOT 1 AND T = 1)
ii turbine speed > 1000 rpm and wind velocity > 120 kph
logic statement: (S = 1 AND W = 1)
iii bearing temperature <= 80°C and wind velocity > 120 kph
logic statement: (T = NOT 1 AND W = 1)
Stage 2
This now produces three intermediate logic circuits:
i
60
Figure 3.20
ii
Figure 3.21
iii
Figure 3.22
Each of the three original statements were joined together by the word OR. Thus we
need to join all of the three intermediate logic circuits by two OR gates to get the
final logic circuit.
We will start by joining (i) and (ii) together using an OR gate:
Figure 3.23
61
Finally, we connect the logic circuit in Figure 3.23 to Figure 3.22 to obtain the
answer:
Figure 3.24
The final part is to produce the truth table. We will do this using the original logic
statement. This method has the bonus of allowing an extra check to be made on the
logic circuit in Figure 3.24 to see whether or not it is correct. It is possible, however,
to produce the truth table straight from the logic circuit in Figure 3.24.
There were three parts to the problem, so the truth table will first evaluate each
part. Then, by applying OR gates, as shown below, the final value, X, is obtained:
i (S = NOT 1 AND T = 1)
ii (S = 1 AND W = 1)
iii (T = NOT 1 AND W = 1)
We find the outputs from parts (i) and (ii) and then OR these two outputs together to
obtain a new intermediate, which we will label part (iv).
We then OR parts (iii) and (iv) together to get the value of X.
Table 3.15
62
Activity 3.4
Two scenarios are described below. In each case, produce the logic circuit
and complete a truth table to represent the scenario.
a A chemical process is protected by a logic circuit. There are three inputs
to the logic circuit representing key parameters in the chemical process.
An alarm, X, will give an output value of 1 depending on certain conditions
in the chemical process. The following table describes the process
conditions being monitored:
Table 3.16
Table 3.17
64
NAND gates. For example, the AND, OR and NOT gates can be built from these
gates as shown below:
The AND gate:
Figure 3.25
The OR gate:
Figure 3.26
Figure 3.27
Activity 3.5
By drawing the truth tables, show that the three circuits above can be used
to represent AND, OR and NOT gates.
Activity 3.6
a Show how the following logic circuit could be built using NAND gates
only.
Also complete truth tables for both logic circuits to show that they
produce identical outputs.
65
Figure 3.28
b Show how the XOR gate could be built from NAND gates only.
c Complete a truth table for your final design to show it that it produces the
same output as a single XOR gate.
Activity 3.7
Show by drawing a truth table which single logic gate has the same function
as the following logic circuit made up of NAND gates only.
Figure 3.29
66
Figure 3.30
Activity 3.8
Show by drawing a truth table which single logic gate has the same function
as the logic circuit drawn in Figure 3.30.
Activity 3.9
Complete the truth table for the following logic circuit and then consider
what simplified design could replace the whole logic circuit.
Figure 3.31
67
4 Operating systems and computer
architecture
In this chapter you will learn about:
• operating systems
• interrupts and buffers
• computer architecture and the von Neumann computer model
• the fetch–execute cycle.
4.1 Introduction
All modern computers have some form of operating system which users generally
take for granted. The operating system makes it possible to communicate with the
software and hardware that make up a typical computer system.
There are many ways of representing computer architecture, but one of the more
common ones is known as the von Neumann model which will be fully described in
this chapter.
68