Presentation is loading. Please wait.

Presentation is loading. Please wait.

Origins of Computing – Post 1900 Raj Reddy Carnegie Mellon University Jan 16, 2013

Similar presentations


Presentation on theme: "Origins of Computing – Post 1900 Raj Reddy Carnegie Mellon University Jan 16, 2013"— Presentation transcript:

1 Origins of Computing – Post 1900 Raj Reddy Carnegie Mellon University Jan 16, 2013 rr@cmu.edu

2 15-346 Schedule of Presentations Spring 2013 Jan 14Raj ReddyOrigins of Computers I – Pre 1900 Jan 16Raj ReddyOrigins of Computers II– Post 1900 Jan 21Chuck ThackerComputer Architecture in the 20th century Jan 23Chuck ThackerComputer Architecture in the 21st century Jan 28 & 30Majd Sakr Fetch & Execute, Pipelining & IL Parallelism Feb 4M HammoudThe Memory Hierarchy Feb 6M HammoudMulticore Challenges Feb 11 & 13Gordon BellArchitectures from Digestible to the Largest Feb 18 (VC)Dan SiewiorekMobile Hardware Technologies Feb 20 (VC)Dan SiewiorekEnd-to-End Application Considerations Feb 25 & 27Student Presentations

3 Necessary Conditions for The Evolution of Computers Representation of Data and Logic Representation of Data and Logic Text, Numbers, Procedures Text, Numbers, Procedures Physical Technology Physical Technology Mechanical, EM Relays, Electronic Devices Mechanical, EM Relays, Electronic Devices Control Unit and Arithmetic Logic Unit Control Unit and Arithmetic Logic Unit I/O Devices I/O Devices Manual, Paper Tape, Punch Cards, Teletype Manual, Paper Tape, Punch Cards, Teletype Programmability Programmability Flexible Automation: Most mechanical machines do just one task; A programmable computer can do many tasks Flexible Automation: Most mechanical machines do just one task; A programmable computer can do many tasks A Language for Expression of Desired Computation A Language for Expression of Desired Computation Automatic Sequencing of successive operations including Automatic Sequencing of successive operations including Conditional Branching: If…then statements Conditional Branching: If…then statements Iteration: Loops - going back to a previous instruction Iteration: Loops - going back to a previous instruction

4 Origins of Computers – Post 1900 Steps towards Automation of Computation Alan Turing (1936 and 1945) Alan Turing (1936 and 1945) Pioneers in Computing Hardware (1939-45) Pioneers in Computing Hardware (1939-45) George Stibitz George Stibitz Konrad Zuse Konrad Zuse John Atanasoff John Atanasoff Howard Aiken Howard Aiken Presper Eckert and John Mauchly Presper Eckert and John Mauchly John von Neumann (1945) John von Neumann (1945)

5 Alan M. Turing (1912-54) Universal Turing Machine Known for Known for Proposed an Abstract Digital Computing Machine, now called a Universal Turing Machine (1936) Proposed an Abstract Digital Computing Machine, now called a Universal Turing Machine (1936) Formalizing the Concepts of Algorithm and Computation Formalizing the Concepts of Algorithm and Computation Ten Years later, Stored Program Digital Computers along the principles envisaged by Turing were becoming a reality Ten Years later, Stored Program Digital Computers along the principles envisaged by Turing were becoming a reality Designed Code Breaking Computers during WW II Designed Code Breaking Computers during WW II Application Specific Electro-Mechanical Computer “Bombe” Application Specific Electro-Mechanical Computer “Bombe” Created the Design for ACE (1945) Created the Design for ACE (1945) a Stored Program Electronic Computer later a Stored Program Electronic Computer later commercialized by Ferranti and English Electric commercialized by Ferranti and English Electric One of the Founders of Artificial Intelligence One of the Founders of Artificial Intelligence In 1950, Proposed Turing Test and Construction In 1950, Proposed Turing Test and Construction and Teaching of a Child Machine and Teaching of a Child Machine An Pioneer of the field of Artificial Life 1952 An Pioneer of the field of Artificial Life 1952

6 Turing Machine Overview

7 Turing Machine Example

8 Alan M. Turing Father of Modern Computer? Abstract “Turing Machine” (1936). Abstract “Turing Machine” (1936). Read, Write and Erase on Infinite Paper Tape Read, Write and Erase on Infinite Paper Tape In Modern Computers, one can also Read, Write and Erase, albeit with finite memory In Modern Computers, one can also Read, Write and Erase, albeit with finite memory Concept of a Stored Program Computer Concept of a Stored Program Computer Concept of a Universal Computer Concept of a Universal Computer Concept of a Program Concept of a Program and Programming and Programming Concept of a Subroutine Concept of a Subroutine ACE Report (1945) ACE Report (1945) Binary Representation Binary Representation Floating Point Arithmetic Floating Point Arithmetic Symbolic Computation Symbolic Computation

9 George Stibitz (1904-95) BTL1 1939 Stibitz is a pioneer in the design of electro mechanical digital computers Stibitz is a pioneer in the design of electro mechanical digital computers BTL1 is known for BTL1 is known for Complex Multiplication and Division Complex Multiplication and Division (x + yi)(u + vi) = (xu – yv) + (xv + yu)i (x + yi)(u + vi) = (xu – yv) + (xv + yu)i Only 3 multiplications and 3 additions Only 3 multiplications and 3 additions Needs a sequence of calculations and Needs a sequence of calculations and storing intermediate results storing intermediate results Fixed Function – Not programmable Fixed Function – Not programmable First Computing Device ever used First Computing Device ever used Remotely over Phone Lines Remotely over Phone Lines Boolean Logic for Circuit Design Boolean Logic for Circuit Design

10 Bell Telephone Labs BTL1

11 Konrad Zuse (1910-1995) Z3 1941 Konrad Zuse is a pioneer in the design of electro mechanical digital computers Konrad Zuse is a pioneer in the design of electro mechanical digital computers Z3 is known for Z3 is known for First working program-controlled general-purpose computer First working program-controlled general-purpose computer Sequence of Instructions on Tape Sequence of Instructions on Tape Conditional Branching missing Conditional Branching missing First to use Binary Representation First to use Binary Representation First use of Floating Point First use of Floating Point Single Address Instructions Single Address Instructions Operation, Operand Operation, Operand First Programmable Computer First Programmable Computer

12 Z3

13 John Atanasoff (1903-95) ABC 1942 John Atanasoff is a pioneer in the design of electronic digital computers John Atanasoff is a pioneer in the design of electronic digital computers Atanasoff-Berry Computer (ABC) Atanasoff-Berry Computer (ABC) ABC is known for ABC is known for First Electronic Digital Computer First Electronic Digital Computer arithmetic logic functions were fully electronic arithmetic logic functions were fully electronic logic gates ranged from inverters to two logic gates ranged from inverters to two and three input gates and three input gates Binary digits represent all numbers Binary digits represent all numbers and data and data Fixed Function – Not Programmable Fixed Function – Not Programmable No Stored Program No Stored Program Mechanical Dram based Regenerative Mechanical Dram based Regenerative capacitor memory (slow?) capacitor memory (slow?)

14 ABC

15 Howard Aiken ASCC: Automatic Sequence Controlled Calculator (Harvard Mark I) 1943 Howard Aiken is a pioneer in the design of electro mechanical digital computers Howard Aiken is a pioneer in the design of electro mechanical digital computers Harvard Mark I is known for Harvard Mark I is known for One of the Largest Computers 51’x8’x2’ One of the Largest Computers 51’x8’x2’ Weighing 10,000 pounds Weighing 10,000 pounds Programmable Programmable Sequence of instructions from Sequence of instructions from 24 channel paper tape 24 channel paper tape No conditional branching No conditional branching Decimal Arithmetic Decimal Arithmetic 72 Storage Counters with 23 digit 72 Storage Counters with 23 digit signed decimal numbers signed decimal numbers

16 ASSC – Harvard Mark I

17 Eckert and Mauchly ENIAC: Electrical Numerical Integrator and Computer 1945 Eckert and Mauchly are pioneers in the emergence of Electronic Digital Computer Eckert and Mauchly are pioneers in the emergence of Electronic Digital Computer Responsible for emergence of global digital computer industry along with IBM Responsible for emergence of global digital computer industry along with IBM Eckert Mauchly Computer Corporation 1948 Eckert Mauchly Computer Corporation 1948 ENIAC Known for ENIAC Known for First Large Scale Electronic Computer First Large Scale Electronic Computer First to become fully operational First to become fully operational Far Faster than any another existing computer Far Faster than any another existing computer Programming by Plugboard Programming by Plugboard Too slow Too slow Full Conditional Branching Full Conditional Branching Decimal Arithmetic Decimal Arithmetic 20 10-digit accumulators 20 10-digit accumulators Punch Card I/O Punch Card I/O Led to EDVAC Report Led to EDVAC Report Training Ground for Many Successors Training Ground for Many Successors

18 ENIAC

19 John von Neumann (1903-57) IAS and Clones Known for Contributions to Known for Contributions to Computer Science Computer Science computer architecture computer architecture self-replicating machines self-replicating machines stochastic computing stochastic computing Mathematics Mathematics set theory set theory functional analysis functional analysis numerical analysis numerical analysis Economics Economics Game Theory Game Theory Physics Physics quantum mechanics quantum mechanics Hydrodynamics Hydrodynamics fluid dynamics fluid dynamics EDVAC Report (1946): Electronic EDVAC Report (1946): Electronic Discrete Variable Automatic Computer Discrete Variable Automatic Computer

20 IAS Computer of Institute for Advanced Studies, Princeton

21 John von Neumann Father of Modern Computer? EDVAC Report (1946): Electronic Discrete Variable Automatic Computer EDVAC Report (1946): Electronic Discrete Variable Automatic Computer A Design Architecture for an Electronic Digital Computer A Design Architecture for an 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 a Stored Program Instructions and Data in same Memory 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 or changed

22 Early Computer Feature Matrix Name DateNumber Rep TechnologyProgramming TuringUTM1936None MechanicalFSM: Stored Program? TuringUTM1936None MechanicalFSM: Stored Program? StibitzBTL11939Decimal RelaySingle App StibitzBTL11939Decimal RelaySingle App ZuseZ31941Binary Relay35mm film ZuseZ31941Binary Relay35mm film Atanasoff ABC1942 Binary ElectronicSingle App Atanasoff ABC1942 Binary ElectronicSingle App AikenASCC1944Decimal RelayPaper Tape AikenASCC1944Decimal RelayPaper Tape Eckert & ENIAC1945Decimal Electronic Plug Board Mauchly Eckert & ENIAC1945Decimal Electronic Plug Board Mauchly John von IAS1946Binary ElectronicStored Program: NeumannInstructions and Data in same Memory John von IAS1946Binary ElectronicStored Program: NeumannInstructions and Data in same Memory

23 Cambrian Explosion of Computers List of Stored Program Computers 1946-1950 Manchester SSEM (UK) Manchester SSEM (UK) CRT memoryJun-48 Binary CRT memoryJun-48 Binary Modified ENIAC (US) Modified ENIAC (US) Read Only MemorySep-48Decimal Read Only MemorySep-48Decimal Cambridge EDSAC (UK) Cambridge EDSAC (UK) Mercury delay line memory May-49Binary Mercury delay line memory May-49Binary Manchester Mark 1 (UK) Manchester Mark 1 (UK) CRT and magnetic drum memoryOct-49Binary CRT and magnetic drum memoryOct-49Binary Pilot ACE (UK) Pilot ACE (UK) Mercury delay line memoryMay-50Binary Mercury delay line memoryMay-50Binary Also CSIRAC, BINAC, UNIVAC, SEAC, Harvard MarkIII Also CSIRAC, BINAC, UNIVAC, SEAC, Harvard MarkIII

24 Necessary Conditions for The Evolution of Computers Representation of Data and Logic Representation of Data and Logic Text, Numbers, Procedures Text, Numbers, Procedures Physical Technology Physical Technology Mechanical, EM Relays, Electronic Devices Mechanical, EM Relays, Electronic Devices Control Unit and Arithmetic Logic Unit Control Unit and Arithmetic Logic Unit I/O Devices I/O Devices Manual, Paper Tape, Punch Cards, Teletype Manual, Paper Tape, Punch Cards, Teletype Programmability Programmability Flexible Automation: Most mechanical machines do just one task; A computer can do many tasks if they are programmable Flexible Automation: Most mechanical machines do just one task; A computer can do many tasks if they are programmable A Language for Expression of Desired Computation A Language for Expression of Desired Computation Automatic Sequencing of successive operations including Automatic Sequencing of successive operations including Conditional Branching: If…then statements Conditional Branching: If…then statements Iteration: Loops - going back to a previous instruction Iteration: Loops - going back to a previous instruction

25 Assignment: Essay and Presentation on Who is the Father of Modern Computer? Babbage?Turing? Von Neumann?


Download ppt "Origins of Computing – Post 1900 Raj Reddy Carnegie Mellon University Jan 16, 2013"

Similar presentations


Ads by Google