who invented the computer? babbage, atanasoff , zuse , turing or v on neumann?

37
Who Invented the Computer? Babbage, Atanasoff, Zuse, Turing or von Neumann? Raj Reddy Carnegie Mellon University Sep 23, 2013 [email protected] Talk given at Heidelberg Laureates Forum on Origins of Computing

Upload: skyla

Post on 23-Feb-2016

37 views

Category:

Documents


0 download

DESCRIPTION

Who Invented the Computer? Babbage, Atanasoff , Zuse , Turing or v on Neumann?. Raj Reddy Carnegie Mellon University Sep 23, 2013 [email protected] Talk given at Heidelberg Laureates Forum on Origins of Computing. 3 Stages of Information Revolution. Invention of Writing 3000BCE - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Who Invented the Computer?Babbage, Atanasoff, Zuse, Turing or von

Neumann?

Raj ReddyCarnegie Mellon University

Sep 23, [email protected]

Talk given at Heidelberg Laureates Forum onOrigins of Computing

Page 2: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

3 Stages of Information Revolution

Invention of Writing 3000BCEHieroglyphs, Kanji Characters

Mesopotamia: Sumerian cuneiform writing on clay tablets

Egypt: writing in hieroglyphic script Invention of Alphabet for simplified writing

and learning, and communication with slavesInvention of Printing 1450CE

Guttenberg PressDemocratization of knowledge

Invention of Computer 1950CEPassive knowledge to active knowledge

Page 3: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Representing NumbersRoman Indo-Arabic Binary

I 1 1 V 5 101 X 10 1010 L 50 110010

C 100 1100100 D 500 111110100 M 1000 1111101000 CXXVIII = 128 = 10000000

Page 4: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Tools for Calculation: Abacus Representing Numbers in Abacus

Bi-Quinary Representation (also used in early computers Colossus, IBM650 and Univac)

Page 5: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Tools for Calculation : Slide Rule

John Napier (1550-1617) Discovered

Logarithms Simplifying arithmetic computations

Popularized the use of Decimal Point Slide Rule: Represents Numbers on a Logarithmic Scale

On a logarithmic scale an equal difference in order of magnitude is represented by

an equal distance

Page 6: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Blaise Pascal (1623-1662)

Known forCo-Founder of Probability TheoryPascal’s Triangle for Binomial

CoefficientsPascaline Mechanical Calculator

Only addition and subtractionPascal Programming Language

named after him

Page 7: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Gottfried Wilhelm Leibniz (1646-1714)

Known for Co-Inventor of Calculus with NewtonBinary Number Systems (Explication de

l'Arithmétique Binaire -1703)Calculus Ratiocinator: Algebra of Logic

as a Calculus of Human Reasoning Formal Logic: Forerunner of

Symbolic LogicLeibniz Pinwheel Calculator

Capable of multiplication and division

Page 8: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

George Boole (1815-64) Algebra of Numbers

Semantics of Addition, Subtraction, and Multiplication of Numbers are well understood

Algebra of Sets and Propositions (Boolean Algebra) Semantics of Addition, Subtraction, and Multiplication in Boolean Algebra

are sometimes different If X=all men and Y=all women X+Y is all men and women If X = all people and Y = all children then X-Y is all AdultsBut X+X=X not 2X X.X = X not X2

Both Algebras Agree if X=0 or 1 0.X = 0 and 1.X = X

Claude Shannon Demonstrated in 1938 that Algebra of Switching Circuits is equivalent to Algebra of Propositions

Page 9: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Babbage and LovelaceInventors of the First Computer and Software

Designer of the Analytic Engine First Programmable General Purpose Computer First Use of Punch Cards and Storage Registers First software program developed by Lady Lovelace

Analytical Engine proposed to use a A Store (Memory) with 1000 50-digit words Arithmetic Unit (ALU) Sequential Control of Instructions (CPU) with Conditional

Branching Punch Card I/O Software on Punch Cards Replacing Fixed Automation by

Programmable Automation Stored Program Computer? Represents Programs as Data, but on Punch Cards

Missing Elements of Babbage’s Design No Binary Arithmetic or Floating Point No Working Prototype

Page 10: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Babbage and LovelaceInventors of the First Computer and Software

Page 11: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Alan M. Turing (1912-54)Turing I: Universal Turing Machine (1936)

Proposed an Abstract Digital Computing Machine, now called a Universal Turing Machine (1936), formalizing theConcepts of Algorithm and ComputationConcept of a Programmable ComputerConcept of a Program

and Programming Concept of a Stored Program ComputerConcept of a SubroutineRead, Write and Erase on an Infinite Paper

TapeModern Computers also Read, Write and Erase

albeit with finite memory

Page 12: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

George Stibitz (1904-95)BTL1 1936

Stibitz is acknowledged as an early pioneer in the digital computer revolution

BTL1 is known forComplex Multiplication and Division

(x + yi)(u + vi) = (xu – yv) + (xv + yu)i3 multiplications and 3 additionsNeeds a sequence of calculations and storing intermediate resultsFixed Function – Not programmable

First Computing Device ever used Remotely over Phone LinesBoolean Logic for Circuit Design

Page 13: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Howard AikenASCC: Automatic Sequence Controlled

Calculator(Harvard Mark I) 1936

Howard Aiken is acknowledged as an early pioneer in the digital computer revolution

Harvard Mark I is known forOne of the Largest Computers 51’x8’x2’

Weighing 10,000 poundsElectro-MechanicalProgrammable

Sequence of instructions from 24 channel paper tapeNo conditional branching

Decimal Arithmetic72 Storage Counters with 23 digit signed decimal numbers

Page 14: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

John Atanasoff (1903-95)ABC 1936

John Atanasoff is acknowledged as an early pioneer in the digital computer revolutionAtanasoff-Berry Computer (ABC)

ABC is known forFirst Electronic Digital Computer

arithmetic logic functions were fully electroniclogic gates ranged from inverters to two and three input gates

Binary digits represent all numbers and dataFixed Function – Not Programmable

No Stored ProgramRegenerative capacitor memory

Page 15: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

John Atanasoff (1903-95)ABC 1936

Page 16: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Konrad Zuse (1910-1995)Z3 1936

Konrad Zuse is acknowledged as an early pioneer in the digital computer revolution

Z3 is known forFirst working, program-controlled, general-

purpose, electro-mechanical relay computerSequence of Instructions on TapeConditional Branching missing

First to use Binary RepresentationFirst use of Floating PointSingle Address Instructions

Operation, OperandFirst Programmable Computer

Page 17: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Konrad Zuse (1910-1995)Z3 1936

Page 18: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Turing IIBombe (1940)

Bombe was an electromechanical device used to decipher German Enigma-machine-encrypted secret messages

Developed by Alan Turing and Gordon Welchman

Produced in 1940 at the UK Government Code and Cypher School

Bombe was An Electro-mechanical Special Purpose ComputerThe First to be used in Symbolic ComputationThe First to be used as a Parallel Computer

Page 19: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Tommy FlowersColossus (1943)

Colossus was the world's first electronic digital computer that was at all programmable

Used for Code Breaking during WWII Colossus

Used 2000+ state-of-the-art vacuum tubes First working implementation of a

programmable electronic computerAtanasoff’s was not programmable

Page 20: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Eckert and MauchlyENIAC: Electrical Numerical Integrator and Computer

1945 Eckert and Mauchly provided key leadership in the

emergence of Electronic Digital Computer Responsible for emergence of global digital computer

industry along with IBMEckert Mauchly Computer Corporation 1948

ENIAC Known forFirst Large Scale Electronic Computer

First to become operationalFar Faster than any another existing computer

Programming by Plugboard Too slow

Full Conditional BranchingDecimal Arithmetic

20 10-digit accumulatorsPunch Card I/OLed to EDVAC Report

Training Ground for Many Successors

Page 21: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

John von Neumannwith Goldstine, Eckert and Mauchly

EDVAC Report (1945): Electronic Discrete Variable Automatic Computer Based on discussions with Goldstine, Eckert and Mauchly A Design for a Programmable Electronic Digital Computer

a processing unit: an arithmetic logic unit and processor registers a control unit: an instruction register and program counter a memory to store both data and instructions external mass storage, and input and output mechanisms

Concept of a Stored Program Concept of Instructions as Data Instructions and Data in same Memory

Concept of sequential flow of control A “program counter” that indicates the current point that has been reached in execution of a program

Concept of a variable “named” storage locations in which a value may be stored and subsequently referenced

Page 22: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

John von Neumann

Page 23: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Turing III: Automatic Computing Engine (ACE) Report (Dec

1945)Also a Founder of Artificial Intelligence Designed Code Breaking Computers during WW

IICreated the Design for ACE (1945),

proposingA Stored Program Electronic Computer With Binary ArithmeticUsing Electronic Logic Circuits

ALU, Memory (and Registers) and I/OStored ProgramConditional BranchingFloating Point

Commercialized by Ferranti and English Electric in 1950s

Page 24: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Cambrian Explosion of Computers

List of Stored Program Computers 1946-1950 Manchester SSEM (UK)

CRT memory Jun-48 Binary

Modified ENIAC (US)Read Only Memory Sep-48

Decimal Cambridge EDSAC (UK)

Mercury delay line memory May-49Binary

Manchester Mark 1 (UK)CRT and magnetic drum memory Oct-49

Binary Pilot ACE (UK)

Mercury delay line memory May-50Binary

Also CSIRAC, BINAC, UNIVAC, SEAC, Harvard MarkIII

Page 25: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Who was the First? Babbage: FIRST to design a PROGRAMMABLE

general purpose computerNot implemented, No Impact

Atanasoff: FIRST to develop a working ELECTRONIC digital computer with binary arithmetic

Not a programmable general purpose computer In spite of familiarity with Babbage’s work, did not see

programmability as a central issue Zuse: FIRST to develop a WORKING

programmable general computer with binary and floating-point arithmetic

Not Electronic, No conditional execution Turing I (1936): FIRST to propose the STORED

PROGRAM CONCEPT (as part of Universal Turing Machine)

No implementation, No direct impact

Page 26: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Who was the First? Turing II (1940): FIRST to be used for

Symbolic Computation and Parallel Computation Special purpose computer for code-braking

Flowers (1944): FIRST working Programmable ELECTRONIC digital computerNot stored program, but just plug-board

programming von Neumann: FIRST to propose the STORED

PROGRAM ELECTRONIC DIGITAL COMPUTERwidely adopted in US, many variations

implemented, including EMCC and IBM Turing III (1945): FIRST to anticipate a RISC

ARCHITECTURE for a programmable electronic computer

ACE architecture used in English Electric and Ferranti Computers

Page 27: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Who is the Inventor of Modern Computer?

Pascal, Leibniz, Stibitz, Aiken, Flowers, Eckert and Mauchly?

Babbage?Atanasoff?

ZuseTuring?

von Neumann?

Page 28: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Relative Contributions of Various Pioneers

Name System Year Programmable

Elec-tronic

Bi-nary

FloatPt

StoredProg

Prototype

CISC/ RISC

Impact Wide Use

Rank

Pascal Pascaline

1645 N N N N N Y N N 7

Leibnitz Pinwheel 1670 N N N N N N N Y 7Stibitz BTL 1936 N N N N N Y N N 7Babbage Analytc

Engine1840 Y N N N Y N N N 6

Aiken BTL 1936 Y N N N Y Y N N 5Atanasoff

ABC 1937 N Y Y N N Y N N 5

Turing II Bombe 1942 N N Y N N Y N Y 5Turing I Turing

Machine1936 Y N Y N Y N Y N 4

Eckert & Mauchly

ENIAC 1940 Y Y N N N Y N Y 4

Flowers Colossus 1944 Y Y Y N N Y N Y 3Zuse Z3 1941 Y Y Y Y Y Y N N 2von Neumann

EDVAC 1945 Y Y Y Y Y Y N Y 1

Turing III ACE 1945 Y Y Y Y Y Y Y Y 0

Page 29: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Programmable?Name System Year Progra

mmable

Elec-tronic

Bi-nary

FloatPt

StoredProg

Prototype

CISC/ RISC

Impact Wide Use

Rank

Pascal Pascaline

1645 N N N N N Y N N 7

Leibnitz Pinwheel 1670 N N N N N N N Y 7Stibitz BTL 1936 N N N N N Y N N 7Babbage Analytc

Engine1840 Y N N N Y N N N 6

Aiken BTL 1936 Y N N N Y Y N N 5Atanasoff

ABC 1937 N Y Y N N Y N N 5

Turing II Bombe 1942 N N Y N N Y N Y 5Turing I Turing

Machine1936 Y N Y N Y N Y N 4

Eckert & Mauchly

ENIAC 1940 Y Y N N N Y N Y 4

Flowers Colossus 1944 Y Y Y N N Y N Y 3Zuse Z3 1941 Y Y Y Y Y Y N N 2von Neumann

EDVAC 1945 Y Y Y Y Y Y N Y 1

Turing III ACE 1945 Y Y Y Y Y Y Y Y 0

Page 30: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Stored Program?Name System Year Progra

mmable

Elec-tronic

Bi-nary

FloatPt

StoredProg

Prototype

CISC/ RISC

Impact Wide Use

Rank

Pascal Pascaline

1645 N N N N N Y N N 7

Leibnitz Pinwheel 1670 N N N N N N N Y 7Stibitz BTL 1936 N N N N N Y N N 7Babbage Analytc

Engine1840 Y N N N Y N N N 6

Aiken BTL 1936 Y N N N Y Y N N 5Atanasoff

ABC 1937 N Y Y N N Y N N 5

Turing II Bombe 1942 N N Y N N Y N Y 5Turing I Turing

Machine1936 Y N Y N Y N Y N 4

Eckert & Mauchly

ENIAC 1940 Y Y N N N Y N Y 4

Flowers Colossus 1944 Y Y Y N N Y N Y 3Zuse Z3 1941 Y Y Y Y Y Y N N 2von Neumann

EDVAC 1945 Y Y Y Y Y Y N Y 1

Turing III ACE 1945 Y Y Y Y Y Y Y Y 0

Page 31: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Binary Arithmetic?Name System Year Progra

mmable

Elec-tronic

Bi-nary

FloatPt

StoredProg

Prototype

CISC/ RISC

Impact Wide Use

Rank

Pascal Pascaline

1645 N N N N N Y N N 7

Leibnitz Pinwheel 1670 N N N N N N N Y 7Stibitz BTL 1936 N N N N N Y N N 7Babbage Analytc

Engine1840 Y N N N Y N N N 6

Aiken BTL 1936 Y N N N Y Y N N 5Atanasoff

ABC 1937 N Y Y N N Y N N 5

Turing II Bombe 1942 N N Y N N Y N Y 5Turing I Turing

Machine1936 Y N Y N Y N Y N 4

Eckert & Mauchly

ENIAC 1940 Y Y N N N Y N Y 4

Flowers Colossus 1944 Y Y Y N N Y N Y 3Zuse Z3 1941 Y Y Y Y Y Y N N 2von Neumann

EDVAC 1945 Y Y Y Y Y Y N Y 1

Turing III ACE 1945 Y Y Y Y Y Y Y Y 0

Page 32: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Working Prototype?Name System Year Progra

mmable

Elec-tronic

Bi-nary

FloatPt

StoredProg

Prototype

CISC/ RISC

Impact Wide Use

Rank

Pascal Pascaline

1645 N N N N N Y N N 7

Leibnitz Pinwheel 1670 N N N N N N N Y 7Stibitz BTL 1936 N N N N N Y N N 7Babbage Analytc

Engine1840 Y N N N Y N N N 6

Aiken BTL 1936 Y N N N Y Y N N 5Atanasoff

ABC 1937 N Y Y N N Y N N 5

Turing II Bombe 1942 N N Y N N Y N Y 5Turing I Turing

Machine1936 Y N Y N Y N Y N 4

Eckert & Mauchly

ENIAC 1940 Y Y N N N Y N Y 4

Flowers Colossus 1944 Y Y Y N N Y N Y 3Zuse Z3 1941 Y Y Y Y Y Y N N 2von Neumann

EDVAC 1945 Y Y Y Y Y Y N Y 1

Turing III ACE 1945 Y Y Y Y Y Y Y Y 0

Page 33: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Impact on SocietyCommercial Availability

Name System Year Programmable

Elec-tronic

Bi-nary

FloatPt

StoredProg

Prototype

CISC/ RISC

Impact Wide Use

Rank

Pascal Pascaline

1645 N N N N N Y N N 7

Leibnitz Pinwheel 1670 N N N N N N N Y 7Stibitz BTL 1936 N N N N N Y N N 7Babbage Analytc

Engine1840 Y N N N Y N N N 6

Aiken BTL 1936 Y N N N Y Y N N 5Atanasoff

ABC 1937 N Y Y N N Y N N 5

Turing II Bombe 1942 N N Y N N Y N Y 5Turing I Turing

Machine1936 Y N Y N Y N Y N 4

Eckert & Mauchly

ENIAC 1940 Y Y N N N Y N Y 4

Flowers Colossus 1944 Y Y Y N N Y N Y 3Zuse Z3 1941 Y Y Y Y Y Y N N 2von Neumann

EDVAC 1945 Y Y Y Y Y Y N Y 1

Turing III ACE 1945 Y Y Y Y Y Y Y Y 0

Page 34: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

In Summary Babbage got most of the elements of a Digital

Computer rightNo impact

Jane Smiley thinks Atanasoff invented the computerBut it was not a general purpose programmable

architecture had no impact on the future evolution

Martin Davis believes that Turing qualifies for the title given the 1936 seminal paperbut the Universal Turing Machine idea was largely

ignored had little impact on the emergence of the modern

computer Zuse got most of the elements right

based on electromechanical components, and no conditional execution

von Neumann or Turing? This is like asking who invented calculus: Newton or

Leibniz? EDVAC and ACE reports defined the future of

Computing

Page 35: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Who Invented the Computer?Babbage, Atanasoff, Zuse, Turing or von

Neumann?

All of them deserve the title “Man Who Invented the Computer”

It is amazing and inspiring that these pioneers working alone and in isolation with limited

resources made as much progress

Page 36: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Post 1945 The dawn of Computer Age?

Advances over last 7 decades: incredible andunprecedented in the annals of science and technologyexponential growth in computational power,exponential growth in memory capacity, exponential growth in optical bandwidth and exponential growth in wireless bandwidth.

Progression from transistors to integrated circuits to vlsi to multicore mainframes to minis to pcs to mobile systems to

warehouse scale computersArpanet to Internet to Wifi to 4G to gigabit wireless Interpreters to compilers to www to apps

Page 37: Who Invented the Computer? Babbage,  Atanasoff ,  Zuse , Turing or  v on Neumann?

Post 1945 (cont)Most importantly, we have expanded the

scale and scope of the uses of computers by developing algorithms for many unconventional tasks such as cars that drive themselvesany-to-any language translationspoken language understandingwinning at games such as

poker, robo-soccer, jeopardywinning and crashing the stock market

Derivatives marketCause sub-prime financial crisis

These are tales for another day!