Upload
florence-powell
View
220
Download
2
Embed Size (px)
Citation preview
1
CSE115 / CSE503Introduction to Computer Science I
Dr. Carl Alphonce343 Davis Hall
2
Announcements
• Recitations begin this week.– “preparatory” lab exercises
• Name sign judging today
3
cell phones off
laptops away
4
name signs out
5
Today
• Representations
• Gates
• Fetch-Decode-Execute cycle
6
Interpretation
• QUESTION:– What does the bit string 1101
represent?
7
Interpretation
• QUESTION:– What does the bit string 1101
represent?
• ANSWER:– Whatever we want it to represent!
8
Roadmap
• A computer is a very simple machine– it manipulates voltages– gates are used to control voltage flow– circuits are combinations of gates– a flip-flop is a circuit that remembers
• Instructions are encoded as bit strings• Machine/assembly/high-level languages• Fetch-Decode-Execute cycle• Requirements for a programming language
9
physical vs. logical perspectives
• Physical reality:
• Logical view:
WIRE
Carries a HIGH voltage or a LOW voltage
WIRECarries a 1 or a 0
10
Idea
11
Idea
12
http://commons.wikimedia.org/wiki/File:Relay_principle_horizontal.jpgUser:Bisgaard,
13
http://commons.wikimedia.org/wiki/File:Electronic_component_relays.jpg
User:FDominec
14
• Electro-mechanical computers – relays: Mark I (1944)
• Electronic computers– vacuum tubes: ENIAC (1946)– transistors: U of Manchester (1953)– integrated circuits (~1963)– microprocessors: Intel 4004 (1971)
15
Controlling flow
0
16
Controlling flow
1
17
Two in a row?
0
18
Two in a row?
0
19
Two in a row?
0
20
Two in a row?
1
21
AND gate
For which input values is output 1?
For which input values is output 0?
inputs are on leftoutput is on right
0 or 1
22
Truth table for AND
Input 1 Input 2 Output
0 0 0
0 1 0
1 0 0
1 1 1
23
OR gate
For which input values is output 1?
For which input values is output 0?
inputs are on leftoutput is on right
24
Truth table for OR
Input 1 Input 2 Output
0 0 0
0 1 1
1 0 1
1 1 1
25
NOT gate
For which input value is output 1?
For which input value is output 0?
input is on left output is on right
26
Truth table for NOT
Input Output
0 1
1 0
27
Flip-flop (a bit of memory!)
S (set)
R (reset)
remembered value
28
Setting the flip-flop
The normal value of R and S is zero.
S (set) = 0
R (reset) = 0
remembered value
29
Setting the flip-flop
To store 1 in the flip-flop, we “raise” S to 1…
S (set) = 1
R (reset) = 0
remembered value
30
Setting the flip-flop
…which makes the output of the OR gate 1.
S (set) = 1
R (reset) = 0
remembered value
1
31
Setting the flip-flop
The NOT gate inverts this 1 value to 0, which becomes the second input to the upper OR gate.
S (set) = 1
R (reset) = 0
remembered value
1 0
0
32
Setting the flip-flop
Since both inputs of the upper OR gate are zero, its output is zero.
S (set) = 1
R (reset) = 0
remembered value
1 0
0
0
33
Setting the flip-flop
The NOT gate inverts this 0 to a 1; this value becomes the second input to the bottom OR.
S (set) = 1
R (reset) = 0
remembered value
1 0
0
0 1
1
34
Setting the flip-flopBecause the output of the bottom OR gate will now stay at 1, we can lower S to zero, and the circuit will stay in a stable state, with 1 as the
remembered value!
Resetting the flip-flopResetting the remembered value to zero is similar, except we raise, then
lower, the value on R.
S (set) = 0
R (reset) = 0
remembered value
1 0
0
0 1
1
35
Recap
• Bit string by itself does not carry meaning.
• Bit string can be interpreted under a given representation scheme, which allows us to recover the encoded meaning.
• Circuits made from simple gates let us store and manipulate bit strings.