32
1 6 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 Babbage Analytical Engine Early History of Computing

1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

Embed Size (px)

Citation preview

Page 1: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

16

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 2: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

27

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 3: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

38

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 4: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

49

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 5: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

510

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 6: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

611

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 7: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

712

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 8: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

813

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 9: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

9

Assembly/Machine

Systems programmerswrite the assembler(translator)

Applications programmers use assembly language to solve problems

Page 10: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1014

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 11: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1115

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 12: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1216

Third Generation Software (1965-1971)

Page 13: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1317

Structured ProgrammingPascal CC++

New Application Software for UsersSpreadsheets Word processors Database management systems

Fourth Generation Software (1971-1989)

Page 14: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1418

MicrosoftWindows operating system and other Microsoft application programs dominate the market

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

World Wide WebAllows easy global communication through the Internet

New UsersToday’s user needs no computer knowledge

Fifth Generation Software (1990- present)

Page 15: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1520

Programmer / User

Applications Programmer(uses tools)

User with No Computer Background

Systems Programmer(builds tools)

Domain-Specific Programs

Computing as a Tool

Page 16: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1621

Computing as a Discipline

What can be (efficiently) automated?

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

Page 17: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1723

Systems Areas of Computer Science

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

Page 18: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

1824

Application Areas of Computer Science

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

Page 19: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

19

What is a Computer?

• Computer – Device capable of performing computations

and making logical decisions– Computers process data under the control of

sets of instructions called computer programs

• Hardware – Various devices comprising a computer– Keyboard, screen, mouse, disks, memory,

CD-ROM, and processing units

Page 20: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

20

• Software – Programs that run on a computer

Page 21: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

21

• Six logical units in every computer:1. Input unit• Obtains information from input devices (keyboard,

mouse)

2. Output unit • Outputs information (to screen, to printer, to

control other devices)

3. Memory unit • Rapid access, low capacity, stores input

information

Computer Organization

Page 22: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

22

4. Arithmetic and logic unit (ALU) • Performs arithmetic calculations and logic

decisions

5. Central processing unit (CPU) • Supervises and coordinates the other sections of

the computer

6. Secondary storage unit • Cheap, long-term, high-capacity storage• Stores inactive programs

Page 23: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

234

Layers of a Computing System

Page 24: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

24

• Batch processing– Do only one job or task at a time

• Operating systems – Manage transitions between jobs– Increased throughput• Amount of work computers process

• Multiprogramming – Computer resources are shared by many jobs

or tasks

Evolution of Operating Systems

Page 25: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

25

• Timesharing– Computer runs a small portion of one user’s

job then moves on to service the next user

Page 26: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

26

Personal Computing, Distributed Computing, and Client/Server

Computing• Personal computers

– Economical enough for individual

• Distributed computing – Computing distributed over networks

• Client/server computing– Sharing of information across computer

networks between file servers and clients (personal computers)

Page 27: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

27

Machine Languages, Assembly Languages, and High-level

Languages

Three types of programming languages1. Machine languages • Strings of numbers giving machine specific

instructions• Example:

+1300042774+1400593419+1200274027

Page 28: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

28

2. Assembly languages• English-like abbreviations representing

elementary computer operations (translated via assemblers)

• Example:LOAD BASEPAYADD OVERPAYSTORE GROSSPAY

Page 29: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

29

3. High-level languages (Java, C++, Python)• Codes similar to everyday English• Use mathematical notations (translated via

compilers)• Example:

grossPay = basePay + overTimePay

Page 30: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

30

History of the Internet• The Internet enables

– Quick and easy communication via e-mail– International networking of computers

• Packet switching– The transfer of digital data via small packets– Allows multiple users to send and receive

data simultaneously

• No centralized control– If one part of the Internet fails, other parts can

still operate

Page 31: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

31

• TCP/IP• Bandwidth

– Information carrying capacity of communications lines

Page 32: 1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,

32

History of the World Wide Web

• World Wide Web – Locate and view multimedia-based

documents on almost any subject– Makes information instantly and conveniently

accessible worldwide– Possible for individuals and small businesses

to get worldwide exposure– Changing the way business is done