Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the...

31
Chapter 1 The Big Picture
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    222
  • download

    3

Transcript of Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the...

Page 1: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

Chapter 1

The Big Picture

Page 2: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

225

Chapter Goals

• Describe the layers of a computer system• Describe the concept of abstraction and its

relationship to computing• Describe the history of computer hardware and

software• Describe the changing role of the computer user• Distinguish between systems programmers and

applications programmers• Distinguish between computing as a tool and

computing as a discipline

Page 3: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

32

Computing systems are dynamic!

What is the difference between hardware and software?

Computing Systems

Page 4: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

43

Hardware The physical elements of a computing system (printer, circuit boards, wires, keyboard…)

Software The programs that provide the instructions for a computer to execute

Computing Systems

Page 5: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

54

Layers of a Computing System

Page 6: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

65

Abstraction A mental model that removes complex details

This is a key concept. Abstraction will reappear throughout the text – be sure you understand it!

Abstraction

Page 7: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

7

Internal View

Page 8: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

8

Abstract View

Page 9: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

9

History

Page 10: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

106

Abacus An early device to record numeric values

Blaise Pascal Mechanical device to add, subtract, divide & multiply

Joseph Jacquard Jacquard’s Loom, the punched card

Charles BabbageAnalytical Engine

Early History of Computing

Page 11: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

117

Ada LovelaceFirst Programmer, the loop

Alan TuringTuring Machine, Artificial Intelligence Testing

Harvard Mark I, ENIAC, UNIVAC IEarly computers launch new era in mathematics, physics, engineering and economics

Early History of Computing

Page 12: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

128

Vacuum TubesLarge, not very reliable, generated a lot of heat

Magnetic Drum Memory device that rotated under a read/write head

Card Readers Magnetic Tape DrivesSequential auxiliary storage devices

First Generation Hardware (1951-1959)

Page 13: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

139

TransistorReplaced vacuum tube, fast, small, durable, cheap

Magnetic CoresReplaced magnetic drums, information available instantly

Magnetic DisksReplaced magnetic tape, data can be accessed directly

Second Generation Hardware (1959-1965)

Page 14: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

1410

Integrated CircuitsReplaced circuit boards, smaller, cheaper, faster, more reliable

TransistorsNow used for memory construction

Terminal An input/output device with a keyboard and screen

Third Generation Hardware (1965-1971)

Page 15: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

1511

Large-scale IntegrationGreat advances in chip technology

PCs, the Commercial Market, WorkstationsPersonal Computers and Workstations emergeNew companies emerge: Apple, Sun, Dell …

LaptopsEveryone has his/her own portable computer

Fourth Generation Hardware (1971-?)

Page 16: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

1612

Parallel ComputingComputers rely on interconnected central processing and/or memory units that increase processing speed

NetworkingEthernet connects small computers to share resources File servers connect PCs in the late 1980s

ARPANET and LANs Internet

Parallel Computing and Networking

Page 17: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

1713

Machine LanguageComputer programs written in binary (1s and 0s)

Assembly Languages and TranslatorsPrograms written using mnemonics, which were translated into machine language

Programmer ChangesProgrammers divide into two groups: application programmers and systems programmers

First Generation Software (1951-1959)

Page 18: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

18

Assembly/Machine

Systems programmerswrite the assembler(translator)

Applications programmers use assembly language to solve problems

Page 19: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

1914

High-level LanguagesEnglish-like statements made programming easier:Fortran, COBOL, Lisp

Second Generation Software (1959-1965)

Systems programmerswrite translators forhigh-level languages

Applicationprogrammersuse high-levellanguages tosolve problems

Page 20: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

2015

Third Generation Software (1965-1971)

Systems Software

Utility programs

Language translators

Operating system, which decides which programs to run and when

Separation between Users and HardwareComputer programmers write programs to be used by general public (i.e., nonprogrammers)

Page 21: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

2116

Third Generation Software (1965-1971)

Page 22: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

2217

Structured ProgrammingPascal CC++

New Application Software for UsersSpreadsheets Word processors Database management systems

Fourth Generation Software (1971-1989)

Page 23: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

2318

MicrosoftWindows operating system and other Microsoft application programs dominate the market

Object-Oriented DesignBased on a hierarchy of data objects (i.e. Java)

World Wide WebAllows easy global communication through the Internet

New UsersToday’s user needs no computer knowledge

Fifth Generation Software (1990- present)

Page 24: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

2420

Programmer / User

Applications Programmer(uses tools)

User with No Computer Background

Systems Programmer(builds tools)

Domain-Specific Programs

Computing as a Tool

Page 25: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

2521

Computing as a Discipline

What can be (efficiently) automated?

Four Necessary Skills• Algorithmic Thinking• Representation• Programming• Design

Page 26: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

26

Is Computer Science a mathematical, scientific, or engineering discipline?

22

What do you think?

Computing as a Discipline

Page 27: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

2723

Systems Areas of Computer Science

• Algorithms and Data Structures• Programming Languages• Architecture• Operating Systems• Software Methodology and Engineering• Human-Computer Communication

Page 28: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

2824

Application Areas of Computer Science

• Numerical and Symbolic Computation• Databases and Information Retrieval• Artificial Intelligence and Robotics• Graphics• Organizational Informatics• Bioinformatics

Page 29: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

29

Ethical Issues

The Digital DivideWhat is it?

How does it affect you?

What is computer literacy for

your sister, the musician?

your brother, the doctor?

your sister, the kindergarten teacher?

Is it important to try to bridge the digital divide?

Page 30: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

30

Who am I?

Can you list three items on my resume?

Page 31: Chapter 1 The Big Picture. 2 25 Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.

31

Do you know?

What computer company was launched in a garage?

What is a protocol? How does this relate tocomputers?

Connect computers and corn.