Foundations of Computer Science: Cengage Learning
Foundations of Computer Science: Cengage Learning
Introduction
1.1
Foundations of Computer Science Cengage Learning
Outline
Turing model
Von Neumann model
Three components of a computer: hardware, data, and
software
Hardware
Data
Software
Social and Ethical issues related to the use of computers
Short history of computers
1.2
1-1 TURING MODEL
1.3
Data processors
•Before discussing the Turing model, let us define a
computer as a data processor.
1.5
Figure 1.3 The same program, different data
1.6
Figure 1.4 The same data, different programs
1.7
The universal Turing machine
•Universal Turing machine: a machine that can do any
computation if the appropriate program is provided.
1.9
Four subsystems
memory, arithmetic logic unit, control unit, and
input/output
1.11
Sequential execution of instructions
•A program in the von Neumann model: finite number of
instructions.
•Control unit: fetches one instruction from memory,
decodes it, then executes it.
•The instructions are executed one after another.
1.12
1-3 COMPUTER COMPONENTS
1.13
Computer hardware
Four components: memory, input/output subsystems,
control, ALU.
Data
The von Neumann model: computer-> a data processing
machine that accepts the input data, processes it, and
outputs the result.
1.14
Computer software
•The main feature of the Turing or von Neumann models:
the concept of the program.
1.15
Figure 1.6 Program and data in memory
1.16
Figure 1.7 A program made of instructions
1.17
1-4 HISTORY
1.18
Mechanical machines (before 1930)
Computing machines were invented that bear little
resemblance to the modern computer.
The first machine that used the idea of storage and programming
was the Jacquard loom, invented by Joseph-Marie Jacquard at the
beginning of the 19th century.
1.19
In 1823, Charles Babbage invented the Difference Engine. Later,
he invented a machine called the Analytical Engine that parallels
the idea of modern computers.
In 1890, Herman Hollerith, working at the US Census Bureau,
designed and built a programmer machine that could automatically
read, tally, and sort data stored on punched cards.
1.20
The birth of electronic computers (1930–1950)
1930~1950: the pioneers of the electronic computer
industry.
1.22
Computer generations (1950–present)
~1950: more or less follow the von Neumann model.
•Faster, smaller, and cheaper, but the principle is almost the
same.
•Historians divide this period into generations with some
major change in hardware or software (but not in the
model).
First generation
(1950–1959) the emergence of commercial computers.
1.23
Second generation
•(1959–1965) used transistors instead of vacuum tubes.
Third generation
•integrated circuit: reduced the cost and size of computers.
•Minicomputers appeared on the market.
•Canned programs, popularly known as software packages,
became available.
•from 1965 to 1975.
1.24
Fourth generation
•(1975–1985) : the appearance of microcomputers.
•The first desktop calculator, the Altair 8800, became
available in 1975.
•Emergence of computer networks.
Fifth generation
•1985~: laptop and palmtop computers
•improvements in secondary storage media (CD-ROM,
DVD and etc.)
•Multimedia, virtual reality.
1.25
1-5 SOCIAL AND ETHICAL ISSUES
1.26
Social issues
Computers have created some arguments.
Dependency
Computers have created a kind of dependency, which makes
people’s lives more difficult.
Social justice
Using computers at home is a luxury benefit that not all
people can afford.
The cost of a computer, peripheral devices, and a monthly
charge for Internet access is an extra burden on low-income
people.
1.27
Digital divide
Electronically connected / not connected
1.28
Ethical issues
Privacy
•Communication between two parties is done electronically.
•Private is necessary.
1.29
Copyright
•who owns data?
•The Internet: share.
•Electronic copyright.
Computer crime
•New types of crime
•Hackers: access many computers in the world and have
stolen a lot of money.
•Virus: sent through the Internet and damage the
information stored in computers.
•Anti-virus programs: big price.
1.30
1-6 COMPUTER SCIENCE AS A DISCIPLINE
1.31
1-7 OUTLINE OF THE COURSE
1.32
Part II: Computer hardware
•Chapter 5: computer hardware
•Chapter 6: computer networks and internetworks
(internets).
1.33
Part IV: Data organization and abstraction
•Chapter 11: data structures
•Chapter 12: abstract data types
•Chapter 13: file structures
•Chapter 14: databases.
1.34