Similar presentations:
Central Processing Unit
1.
2.
3.
4.
CPU5.
CentralProcessing
Unit
6.
CPUCPU
7.
CLOCK – keep it in sync!Gigahertz –
Gig =billion
Hertz =time per second
8.
ScottCPU
9.
10.
11.
Motherboardaddress
bus
control
bus
CPU
socket
set
control
bus
enable
data
bus
RAM
socket
12.
Motherboardaddress
bus
control
bus
CPU
socket
set
control
bus
enable
data
bus
RAM
socket
13.
addressRAM
RAM
256
BYTES
set
address
bus
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
enable
data
14.
Random access memoryaddress
RAM
RAM
data
256
BYTES
…
01100001
set
control
bus
enable
data
bus
01100010
00001001
01100011
01110000
01100100
00001111
01100101
11110001
01100110
01010010
01100111
11100001
01101000
01111011
01101001
00011000
01101010
01000111
…
Scott
CPU
O
r
d
e
r
00100001
…
address
bus
enable
…
set
RAM
socket
List of addresses
Data
15.
addressRAM
RAM
256
BYTES
set
address
bus
01100001
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
enable
data
16.
addressRAM
RAM
256
BYTES
set
address
bus
01100001
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
enable
data
17.
addressRAM
RAM
data
256
BYTES
set
enable
address
bus
01100001
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
00100001
18.
addressRAM
RAM
data
256
BYTES
set
enable
address
bus
01100001
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
00100001
19.
addressRAM
RAM
256
BYTES
set
address
bus
01100010
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
enable
data
20.
addressRAM
RAM
256
BYTES
set
address
bus
01100010
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
enable
data
21.
addressRAM
RAM
data
256
BYTES
set
enable
address
bus
01100010
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
00001001
22.
addressRAM
RAM
data
256
BYTES
set
enable
address
bus
01100010
Scott
CPU
set
control
bus
enable
data
bus
RAM
socket
00001001
23.
addressRAM
RAM
data
256
BYTES
set
enable
address
bus
Scott
CPU
01100011
set
control
bus
enable
If you need save data
data
bus
RAM
socket
01110000
24.
addressRAM
RAM
256
BYTES
set
address
bus
Scott
CPU
set
control
bus
01100100
enable
data
bus
RAM
socket
enable
data
25.
addressRAM
RAM
data
256
BYTES
set
enable
address
bus
Scott
CPU
set
control
bus
01100100
enable
data
bus
RAM
socket
00001111
26.
addressRAM
RAM
data
256
BYTES
set
enable
address
bus
Scott
CPU
set
control
bus
01100100
enable
data
bus
RAM
socket
00001111
27.
addressRAM
RAM
data
256
BYTES
…
address
bus
01100001
00001001
set
01100011
01110000
01100100
00001111
enable
01100101
11110001
01100110
01010010
01100111
11100001
01101000
01111011
01101001
00011000
01101010
01000111
data
bus
…
control
bus
00100001
01100010
…
Scott
CPU
enable
…
set
RAM
socket
What is a data???
28.
addressRAM
RAM
data
256
BYTES
control
bus
…
Instruction
01100010
Number
set
01100011
Instruction
01100100
Address
enable
01100101
Instruction
01100110
Instruction
01100111
Address
01101000
Instruction
01101001
Address
01101010
Letter
…
Scott
CPU
01100001
…
address
bus
enable
…
set
data
bus
RAM
socket
29.
addressRAM
RAM
data
256
BYTES
…
address
bus
01100001
01100010
00001001
set
01100011
01110000
01100100
00001111
enable
01100101
11110001
01100110
01010010
01100111
11100001
01101000
01111011
01101001
00011000
01101010
01000111
…
control
bus
00100001
…
Scott
CPU
enable
…
set
data
bus
RAM
socket
30.
256BYTES
set
control
bus
enable
set
data
bus
RAM
socket
enable
01100001
data
00100001
01100010
00001001
01100011
01110000
01100100
00001111
01100101
11110001
01100110
01010010
01100111
11100001
01101000
01111011
01101001
00011000
01101010
01000111
…
Scott
CPU
RAM
RAM
…
address
…
…
address
bus
31.
controlbus
set
RAM
RAM
256
enable BYTES
set
enable
data
bus
RAM
socket
data
01100010
00001001
01100011
01110000
01100100
00001111
01100101
11110001
01100110
01010010
01100111
11100001
01101000
01111011
01101001
00011000
01101010
01000111
…
Scott
CPU
address
00100001
…
01100001
…
…
address
bus
32.
……
address
bus
0110000100100001
01100010 00001001
control
bus
set
RAM
RAM
01100011 01110000
01100100 00001111
256
enable BYTES
set
data
enable
01100101 11110001
01100110 01010010
01100111 11100001
01101000 01111011
data
bus
01101001 00011000
RAM
socket
…
01101010 01000111
…
Scott
CPU
address
33.
Instruction SetSTORE a number from the CPU back out to RAM
COMPARE one number with another
01100001
LOAD
01100010
9
01100011
IN
01100100 Keyboard
01100101 COMPARE
JUMP IF Condition to another address in RAM
01100110 JUMP IF =
JUMP to another address in RAM
OUTPUT to a device such as a monitor
INPUT from a device such as a keyboard
01101000
OUT
01101001
Monitor
01101010
“G”
…
01100111 10100001
…
Scott
CPU
…
ADD two numbers together
…
LOAD a number from RAM into the CPU
34.
ArithmeticLogic
Unit
(ALU)
Control Unit
35.
InputA
Arithmetic
Logic
Unit
(ALU)
Control Unit
36.
InputA
Input
B
Arithmetic
Logic
Unit
(ALU)
Control Unit
37.
InputA
Input
B
Arithmetic
Logic
Unit
(ALU)
Control Unit
Instruction
from RAM
38.
InputA
Input
B
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
Instruction
from RAM
39.
InputA
Input
B
Arithmetic
Logic
Unit
(ALU)
Output
Control Unit
Type of
Operation
Instruction
from RAM
40.
InputA
Input
B
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
Instruction
from RAM
41.
InputA
Input
B
Arithmetic
Logic
Unit
(ALU)
Flags
Control Unit
Type of
Operation
Instruction
from RAM
42.
InputA
Input
B
Arithmetic
Logic
Unit
(ALU)
Output
Control Unit
Type of
Operation
Instruction
from RAM
43.
ArithmeticLogic
Unit
(ALU)
Output
Control Unit
44.
ArithmeticLogic
Unit
(ALU)
Output
Control Unit
45.
ArithmeticLogic
Unit
(ALU)
Register
Control Unit
46.
ArithmeticLogic
Unit
(ALU)
Register
Control Unit
47.
ArithmeticLogic
Unit
(ALU)
00000000
Control Unit
48.
ArithmeticLogic
Unit
(ALU)
00000000
Control Unit
set
49.
ArithmeticLogic
Unit
(ALU)
00000000
Control Unit
set
50.
ArithmeticLogic
Unit
(ALU)
11000111
Control Unit
set
51.
ArithmeticLogic
Unit
(ALU)
11000111
Control Unit
set
52.
ArithmeticLogic
Unit
(ALU)
11000111
Control Unit
set
enable
53.
ArithmeticLogic
Unit
(ALU)
11000111
Control Unit
set
enable
54.
ArithmeticLogic
Unit
(ALU)
11000111
Control Unit
set
enable
55.
ArithmeticLogic
Unit
(ALU)
11000111
Control Unit
set
enable
56.
ArithmeticLogic
Unit
(ALU)
11000111
Control Unit
set
enable
57.
RegisterArithmetic
Logic
Unit
(ALU)
11000111
Register
Register
Control Unit
set
enable
Register
58.
ArithmeticLogic
Unit
(ALU)
11000111
Register
Register
Register
Register
s
s
s
s
e
e
e
Control Unit
set
enable
e
59.
00001001s
Arithmetic
Logic
Unit
(ALU)
11000111
e
00001001
s
e
00000000
s
e
Control Unit
set
enable
00000010
s
e
60.
00001001s
Arithmetic
Logic
Unit
(ALU)
11000111
e
00001001
s
e
00000000
s
e
Control Unit
set
enable
00000010
s
e
61.
00001001s
Arithmetic
Logic
Unit
(ALU)
11000111
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
62.
00001001s
Arithmetic
Logic
Unit
(ALU)
11000111
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
63.
00001001s
Arithmetic
Logic
Unit
(ALU)
11000111
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
64.
Temporaryset
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
65.
Temporaryset
Input
B
s
Arithmetic
Logic
Unit
(ALU)
11000111
00001001
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
66.
Temporaryset
Input
B
s
Arithmetic
Logic
Unit
(ALU)
11000111
00001001
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
67.
00001001set
Input
B
s
Arithmetic
Logic
Unit
(ALU)
11000111
00001001
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
68.
00001001set
Input
B
s
Arithmetic
Logic
Unit
(ALU)
11000111
00001001
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
69.
00001001set
Input
B
s
Arithmetic
Logic
Unit
(ALU)
11000111
00001001
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
70.
00001001set
Input
B
s
Arithmetic
Logic
Unit
(ALU)
11000111
00001001
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
71.
00001001set
Input
B
s
Arithmetic
Logic
Unit
(ALU)
11000111
00001001
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
72.
00001001Input
A
set
Input
B
s
Arithmetic
Logic
Unit
(ALU)
11000111
00001001
e
00001001
s
e
11000111
s
e
Control Unit
set
enable
00000010
s
e
73.
00001001Input
A
set
Input
B
00001001
s
00001001
e
s
Arithmetic
Logic
Unit
(ALU)
11000111
e
11000111
s
e
Control Unit
set
enable
Instruction
s
00000010
s
e
74.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
Arithmetic
Logic
Unit
(ALU)
s
e
Control Unit
Type of
Operation
11000111
e
11000111
set
enable
Instruction
s
00000010
s
e
75.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
s
e
Flags
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
11000111
e
11000111
set
enable
Instruction
s
00000010
s
e
76.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
s
e
Flags
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
11000111
e
11000111
set
enable
Instruction
s
00000010
s
e
77.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
s
e
Flags
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
11000111
e
11000111
set
enable
Instruction
s
00000010
s
e
78.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
e
11000111
s
e
A is Larger
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
11000111
set
enable
Instruction
s
00000010
s
e
79.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
s
e
Equal
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
11000111
e
11000111
set
enable
Instruction
s
00000010
s
e
80.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
s
e
A is Larger
Equal
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
11000111
e
11000111
set
enable
Instruction
s
00000010
s
e
81.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
s
e
Equal
Arithmetic
Logic
Unit
(ALU)
Control Unit
Type of
Operation
11000111
e
11000111
set
enable
Instruction
s
00000010
s
e
82.
00001001Input
A
set
00001001
Input
B
s
00001001
e
s
Arithmetic
Logic
Unit
(ALU)
s
e
Control Unit
Type of
Operation
11000111
e
11000111
set
enable
Instruction
s
00000010
s
e
83.
00001001Input
A
set
00001001
Input
B
s
Arithmetic
Logic
Unit
(ALU)
00001001
e
s
set
enable
s
e
Control Unit
Flags
Type of
Operation
11000111
e
11000111
Instruction
s
00000010
s
e
84.
00001001Input
A
set
00001001
Input
B
s
Arithmetic
Logic
Unit
(ALU)
00001001
e
s
set
enable
s
e
Control Unit
Flags
Type of
Operation
11000111
e
11000111
Instruction
s
00000010
s
e
85.
00001001Input
A
set
00001001
Input
B
s
Arithmetic
Logic
Unit
(ALU)
Flags
00001001
e
s
set
enable
s
e
Control Unit
set
Type of
Operation
11000111
e
11000111
Instruction
s
00000010
s
e
86.
00001001Input
A
set
00001001
Input
B
s
Arithmetic
Logic
Unit
(ALU)
Flags
00001001
e
s
set
enable
s
e
Control Unit
set
Type of
Operation
11000111
e
11000111
Instruction
s
00000010
s
e
87.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
00001001
e
s
e
11000111
s
e
Control Unit
set
Instruction
s
00000010
s
e
88.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
00001001
e
s
e
11000111
s
e
Control Unit
set
Instruction
s
s
e
Instruction
Address
00000010
s
e
89.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
00001001
e
s
e
11000111
s
e
Control Unit
set
Instruction
s
s
e
Instruction
Address
00000010
s
e
90.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
91.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
92.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
93.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
94.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
95.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
96.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
Data from RAM
97.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
Data from RAM
98.
00001001set
00001001
s
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Memory
Address
to RAM
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
Control Unit
set
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
Data from RAM
99.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
100.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Jump If
Equal
set
enable
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
101.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Jump If
Equal
set
enable
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
102.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Equal
Jump If
Equal
set
enable
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
103.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Equal
Jump If
Equal
set
enable
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
104.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
e
s
e
s
Memory
Address
AND
Jump If
Equal
enable
s
00000010
Control Unit
set
Equal
set
e
11000111
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
105.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
e
s
e
s
Memory
Address
AND
Jump If
Equal
enable
s
00000010
Control Unit
set
Equal
set
e
11000111
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
106.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
AND
Jump If
Equal
enable
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Equal
set
e
11000111
Instruction
s
Triggers Jump
s
e
Instruction
Address
set RAM
enable RAM
107.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
AND
Jump If
Equal
enable
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Equal
set
e
11000111
Instruction
s
Triggers Jump
s
e
Instruction
Address
set RAM
enable RAM
Next Piece of Data
from RAM
108.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
AND
Jump If
Equal
enable
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Equal
set
e
11000111
Instruction
s
Triggers Jump
s
e
Instruction
Address
set RAM
enable RAM
Next Piece of Data
from RAM
109.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
AND
Jump If
Equal
enable
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Equal
set
e
11000111
Instruction
s
Triggers Jump
s
e
Instruction
Address
set RAM
enable RAM
Next Piece of Data
from RAM
110.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
set
enable
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
111.
00001001set
00001001
s
Arithmetic
Logic
Unit
(ALU)
11000111
Flags
00001001
e
s
e
11000111
s
e
00000010
s
e
s
Memory
Address
Control Unit
set
control wires
to Keyboard,
Display, etc
set
enable
Instruction
s
s
e
Instruction
Address
set RAM
enable RAM
112.
TemporaryArithmetic
Logic
Unit
(ALU)
Register
Register
Register
Register
Control Unit
Flags
Instruction
Instruction
Address
Register
Memory
Address
113.
ArithmeticLogic
Unit
(ALU)
Control Unit
114.
ArithmeticLogic
Unit
(ALU)
Control Unit
115.
116.
Motherboardaddress
bus
control
bus
Scott
CPU
address
control
bus
set
RAM
RAM
256
enable BYTES
set
enable
data
bus
RAM
socket
data
117.
Motherboardaddress
bus
control
bus
Scott
CPU
address
control
bus
set
RAM
RAM
256
enable BYTES
set
enable
data
bus
RAM
socket
data
118.
Motherboardaddress
bus
control
bus
Scott
CPU
address
control
bus
set
RAM
RAM
256
enable BYTES
set
enable
data
bus
RAM
socket
data
119.
Motherboardaddress
bus
control
bus
Scott
CPU
address
control
bus
set
RAM
RAM
256
enable BYTES
set
enable
data
bus
RAM
socket
data
120.
Motherboardaddress
bus
control
bus
Scott
CPU
address
control
bus
set
RAM
RAM
256
enable BYTES
set
enable
data
bus
RAM
socket
data
121.
122.
123.
124.
>>> GuessingGame.exeGuess a number between 1 and 10:
9
You Guessed Correctly!
`
Tab
1
Caps
Lock
Shift
Ctrl
Alt
Q
A
Z
2
W
S
X
3
E
D
C
4
R
F
V
5
T
G
B
6
Y
H
N
7
U
J
M
8
I
K
,
9
O
L
.
Alt
0
P
;
/
Ctrl
-
[
‘
=
]
Enter
Shift
\
125.
Whatever you do,work at it with all your heart,
as working for the Lord,
not for human masters
Colossians 3:23