Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create...

9
Matlab® Computing for Engineers and Scientists CITS1005 Where do Computers Come From? Lecture 1 Matlab® Computing for Engineers and Scientists CITS1005 What is a Computer? ? 2 Matlab® Computing for Engineers and Scientists CITS1005 What is a Computer? Consists of two things: 1. A set of interconnected switches - switching some of the switches causes other switches to switch 3 2. A way of setting some of those switches off (in a useful order) Hardware Software Matlab® Computing for Engineers and Scientists CITS1005 Example - Early Computing ! Jacquard Loom (18 th century) A French weaver, Joseph Jacquard developed a loom that wove complex patterns using punch cards. http://www.columbia.edu/acis/history/jacquard.html the hardware the software (punched into the cards)

Transcript of Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create...

Page 1: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

Where do Computers Come From?

Lecture 1

Matlab® Computing for Engineers and Scientists CITS1005

What is a Computer?

?2

Matlab® Computing for Engineers and Scientists CITS1005

What is a Computer?

Consists of two things:

1. A set of interconnected switches

- switching some of the switches

causes other switches to switch

3

2. A way of setting some of

those switches off (in a useful

order)

Hardwar

e

Softwar

e

Matlab® Computing for Engineers and Scientists CITS1005

Example - Early Computing

! Jacquard Loom

(18th century)

A French weaver, Joseph

Jacquard developed a

loom that wove complex

patterns using punch

cards. htt

p:/

/w

ww

.co

lum

bia

.edu/ac

is/h

isto

ry/ja

cquar

d.h

tml

the hardware the software

(punched into the cards)

Page 2: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

Early Computing

! The Hardware:Difference Engine (18th-19th century)

! Designed by Charles Babbage to solve certain mathematical problems (complex polynomial equalities to a high degree of precision)

Dif

fere

nce

En

gin

e:h

ttp

://w

ww

.sci

ence

andso

ciet

y.co

.uk/

resu

lts.

asp

?im

age=

1030

6385

! The Software:Ada Lovelace

Regarded as thefirst ever“programmer”

Matlab® Computing for Engineers and Scientists CITS1005

The First iPod?

• Pianola (piano player)

– 1898

6

htt

p:/

/w

ww

.pia

nola

.org

/h

isto

ry/h

isto

ry.c

fm

the hardware

the software

(Beethoven’s Fifth)

Matlab® Computing for Engineers and Scientists CITS1005

The First “Computer!”

7

?

Matlab® Computing for Engineers and Scientists CITS1005

Computer Hardware

• Back to “where do computers come from?”

• The 6 great moments in computer

hardware...

8

Page 3: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

1. The Thermionic Valve

• A non-mechanical “automated” switch!

– output of one switch can switch another

• Suddenly many things were possible...9

Matlab® Computing for Engineers and Scientists CITS1005

Automated Switches

• Automated switches can do a lot of cool things

– implement logic gates

– from logic gates you can create multiplexors, decodors,

storage devices (flip flops), adders, multipliers

– they can do stuff like maths really fast

– even send people to the moon!

• If you collect a lot of switches together you get...

10

Matlab® Computing for Engineers and Scientists CITS1005

2. Mainframe Computers

• The birth of modern computers

11

Colossus Mark II

Matlab® Computing for Engineers and Scientists CITS1005

Mainframe Computers

• ENIAC - Electronic Numerical Integrator And Computer (1945)

– developed by John Mauchly and J. Presper Eckert.

– The first successful operational, general purpose, electronic digital computer.

http://e

n.w

ikip

edia

.org

/wik

i/Im

age:E

nia

c.jpg

Page 4: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

Mainframe Computers

• Manchester Mark 1 (1949) – the first true stored program computer.

Turing was involved.

• EDVAC (1951) – Completely binary in internal operations, floating point

operations. Stored program computer. Von Neumann design.

• UNIVAC (1951) – First commercial computer in the US

Sourc

e: http://e

n.w

ikip

edia

.org

/wik

i/U

NIV

AC

_I

Matlab® Computing for Engineers and Scientists CITS1005

Some even dreamed of a “Home Computer”!

14

Matlab® Computing for Engineers and Scientists CITS1005

3. The Transistor (another switch)

• A small, very fast,

automated switch

• First patented 1925,

developed late 1940s

• The greatest invention

ever?

15

http://ees.w

ikispaces.com/H

istoria+del+transistor

Matlab® Computing for Engineers and Scientists CITS1005

The Transistor

• Which got smaller... and smaller...

and smaller... until it became...16

Page 5: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

4. The Integrated Circuit

17

Matlab® Computing for Engineers and Scientists CITS1005

The Integrated Circuit

• Which was still just a lot of switches, but a

LOT!

• which enabled...18

Matlab® Computing for Engineers and Scientists CITS1005

5. The Minicomputer!

• Starring...

• 1960 - 1980s: DEC PDP series

– 1960: PDP-1: 18-bit machine

Birth of hacker culture,

first computer video game - Space War!

– 1965: PDP-8: 12-bit

Wildly successful, first

“personal computer” or

minicomputer.

Purchased by universities,

research labs, etc

So

urc

e:

htt

p:/

/en

.wik

ipe

dia

.org

/wik

i/S

pa

ce

wa

r

So

urc

e:

htt

p:/

/en

.wik

ipe

dia

.org

/wik

i/P

DP

-8

Matlab® Computing for Engineers and Scientists CITS1005

The Minicomputer

• Made computing accessible to institutions

• PDP-11: The archetypal minicomputer

Widely regarded as the best 16-bit instruction

set ever created. Influenced later CPUs such as

Motorolla 68000.

(See CSSE lobby!)

• VAX: 32-bit architecture

Regarded as the

quintessential

CISC processing

architecture.

1M instructions

per second!

So

urc

e:

htt

p:/

/en

.wik

ipe

dia

.org

/wik

i/V

AX

So

urc

e:

htt

p:/

/en

.wik

ipe

dia

.org

/wik

i/P

DP

-11

Page 6: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

Aside - Computing in WA

• First computer brought to West Australia in 1962 when the

West Australian Regional Computing Centre (WARCC) was

established at UWA with a single IBM 1620.

• In 1965 WARCC purchased a DEC PDP 6, a multi-access,

time-sharing computer, and became the first organisation in

the world to lease time on a computer.!

• By 1972 WARCC had also acquired a DEC PDP 10 and a

CDC Cyber 72 and was a semi-autonomous organisation used

by the University of Western Australia and by other research

institutions.

Source: http://www.ucc.asn.au/aboutucc/history.rtf

Matlab® Computing for Engineers and Scientists CITS1005

Aside - Computing in WA

• The “DEC 10” (PDP-10)

Sourc

e: http://w

ww

.colu

mbia

.edu/a

cis

/his

tory

/pdp10.h

tml

Matlab® Computing for Engineers and Scientists CITS1005

Aside - Computing in Engineering @ UWA

• The VAX 11/750

Released in 1980

32-bit address bus

VMS operating system

(later Unix)

Ran classroom of

approx 20 terminals

Sourc

e:

http://w

ww

.webm

yth

olo

gy.

com

/V

AX

his

tory

.htm

Matlab® Computing for Engineers and Scientists CITS1005

6. Birth of the Personal Computer

• 1970s: First “personal computers”

– 1975: Altair 8800

Microcomputer based on

Intel 8080A CPU

Sparked personal

computer revolution

– 1976: Apple I

Original PCs came

in kit form

for enthusiasts

Sourc

e:

http://w

ww

.apple

-his

tory

.com

/ Sourc

e:

http://e

n.w

ikip

edia

.org

/wik

i/A

ltair_8800

Page 7: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

Personal Computers

• Radio Shack (Tandy) TRS-80

Integrated units.

Notice tape recorder for

program/data storage!

• 1980: Dick Smith System 80

Austalia’s

answer!

Sourc

e:

http://s

kyla

ne.k

jsl.com

/trs

80/

Sourc

e:

http://w

ww

.webw

eavers

.co.n

z/

syste

m-8

0/

Matlab® Computing for Engineers and Scientists CITS1005

Personal Computers

• 1981: IBM PC

The “green screen”

computers

4.77 MHz Intel 8088 16KB

• 1983: Apple IIe

Motorolla 68000 CPU

Graphics!

Matlab® Computing for Engineers and Scientists CITS1005

Personal Computers

• 1984: Apple Macintosh

MC68000, 8MHz, 16-bit,

128kB RAM, 3.5” floppy

Hey, is that a window!?

• And the rest, as they say, is history...

Matlab® Computing for Engineers and Scientists CITS1005

Computer Software

• 6 great moments in software storage...

28

Page 8: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

1. Punch Cards

! Herman Hollerith (1860-1926)

! Developed “An Electric Tabulating System” or tabulator to do statistics

! A founder of the Computing-Tabulating-Recording Company (CTR) that

became International Business Machines Corporation (IBM) in 1924.

! Allowed persistent storage of programs and data!

Matlab® Computing for Engineers and Scientists CITS1005

2. Magnetic Tape

• IBM 701 - the first magnetic tape

drive for computer data storage, 1949

• 8mm tape and drive, 1987

• Compact (electrically based) storage media

- far more data in much smaller space

30

Matlab® Computing for Engineers and Scientists CITS1005

3. The Hard Disk Drive

• Introduced by IBM

in 1956

• Fast, compact and

reliable, but most of

all...

• Provided random

access!

31

Matlab® Computing for Engineers and Scientists CITS1005

4. The Floppy Drive

• Invented by IBM, 1971

• Provided reliable removable/

transportable form of

persistent storage

• Primary removable media in

70’s, 80’s, up to 90’s

32

Page 9: Matlab® Computing for Engineers and Scientists CITS1005 ... · – from logic gates you can create multiplexors, decodors, storage devices (flip flops), adders, multipliers – they

Matlab® Computing for Engineers and Scientists CITS1005

5. Optical Storage

• CDs and DVDs

– late 1970s, mid 90s

– lower capacity than

magnetic storage,

but..

– less volatile

– much harder wearing

and resilient, long

lasting33

Matlab® Computing for Engineers and Scientists CITS1005

6. Flash Memory

• Invented in 1980s

• A type of Electrically

Erasable Programmable

Read-Only Memory

• Initially too small for

wide use but growing

rapidly

• No moving parts!34

Matlab® Computing for Engineers and Scientists CITS1005

Further Reading

• Switches:

Tanenbaum, Chapter 3 up to Section 3.1.1

• Computer Milestones:

Tanenbaum, Section 1.2 - 1.4.1

35