Class Notes (1,019,024)
CA (585,302)
U of S (3,517)
CMPT (50)
Lecture 1

# CMPT 115 Lecture Notes - Lecture 1: Computer, Goback, Abbreviation

6 pages40 viewsWinter 2016

Department
Computer Science
Course Code
CMPT 115
Professor
Jason Bowie
Lecture
1

This preview shows pages 1-2. to view the full 6 pages of the document.
Basic Concepts
CMPT 115 lecture notes
Notes written by Michael Horsch, Mark Eramian, Ian McQuillan, Lingling Jin, and Dmytro Dyachuk
Obectives
By the end of this lecture topic, you are expected to be able to:
1. Describe the process of abstraction
2. Give examples of abstraction
3. Describe the process of top-down design (stepwise reﬁnement)
4. Give examples of top-down design (stepwise reﬁnement)
5. Deﬁne the terms C. E. R. A. R.
6. Describe the beneﬁts of data organization.
Contents
1 Levels of Abstraction 1
2 Top-Down Design 3
3 Application Design 4
4 Storing and Manipulating Data 6
1 Levels of Abstraction
Abstraction
Deﬁnition
Abstraction is the process of extracting or distilling the underlying essence or important properties of a
concept, removing some or all dependence on real world objects with which it might originally have been
connected.
Example: bits
Information is represented electronically in a computer by voltages, at diﬀerent levels.
If the voltage is “high”, a computer interprets this as a “1”. If the voltage is “low”, then a computer
interprets this as a “0”.
However, voltage is measured on a continuous scale, not just in two distinct states.
1

Unlock to view full version

Only half of the first page are available for preview. Some parts have been intentionally blurred.

Abstraction: voltages states
Levels of abstraction
High(est) level
Low(est) level
Purpose or main point only
Purpose described
with some details included
Purpose fully realized
with all details included
More abstract
Less detail
Less abstract
More detail
Sort student numbers
Input: an int array
Output: sorted array
void sort(int a[], int size)
{
// code omitted for brevity
}
store 01242
compare 0
jump 88762
...
0100101011
1010011011
0110100110
1010110000
1101101001
0101101101
...
+
Purpose
Speciﬁcation
Implementation
Assembly code
Machine code
Voltages
Building abstraction hierarchies
When we have some abstraction, we can build another abstraction on it.
The new abstraction is at a higher level of abstraction.
Example: natural sciences
A Hierarchy of scientiﬁc abstraction ??
physics, chemistry, biology
Computer system - levels of abstraction
2