Top Banner
1 CPSC 181 A Brief History of Computer Science Spring 2010 Prof. Jennifer Welch Sources Schneider and Gersting, An Invitation to Computer Science primary source Slides from Prof. John Keyser American University’s Computing History Museum http://www.computinghistorymuseum.org/ Virginia Tech’s History of Computing website: http://ei.cs.vt.edu/~history Computer History Museum http://www.computerhistory.org/ IEEE Annals of the History of Computing (Journal) http://www.computer.org/portal/site/annals/index.jsp Andrew Hodges’ website about Alan Turing http:// www.turing.org.uk/turing/index.html 2 Early Mathematics & Computation Babylonians and Egyptians, > 3000 yrs ago numerical methods for generating tables of square roots, multiplication, trig Applications: navigation, agriculture, taxation Greeks, > 3000 yrs ago geometry and logic Indians, ~ 600 AD started using placeholders and a decimal number system, similar to modern idea spread to Middle East Arabs and Persians ~ 800 AD algorithms 3 A Famous Arab Mathematician In early 800s AD Worked at center of learning in Baghdad Wrote book: Hisab Al Jabr Wal‐Mugabalah Described how to compute several practical problems, including linear and quadratic equations Translated into Latin, spread throughout Europe Solidified number system in use now: “Arabic numerals” Al Jabr gives us the word “algebra” Al‐Khowarizmi gives us the word “algorithm” 4 Abu Jafar Mohammed Ibn Musa Al-Khowarizmi fig. from Donald Knuth's website Early Computing Devices Abacus About 3000 BC Different types, developed over time Common wire/bead: about 500 BC Some still in use today John Napier’s Bones 1617: Sticks with numbers on them Use to do 4 basic arithmetic operations William Oughtred’s Slide Rule 1622: Sticks with logarithmic scale, slide along Much more complex calculations Used well into 20 th century (replaced by handheld calculator) 5 fig from http://www.ee.ryerson.ca/~elf/ abacus More Early Computing Devices Blaise Pascal 1642: First numerical calculating machine (addition and subtraction) Gottfried Leibniz 1673: 4‐function mechanical calculator (addition, subtractions, multiplication, division) 6 Used cogs and gears Showed mechanization can simplify and speed up numerical calculations fig from http://www.tcf.ua.edu/AZ/ ITHistoryOutline.htm
6

Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf · Friend of Charles Babbage • Translated, edited, and commented on document describing

Mar 21, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf · Friend of Charles Babbage • Translated, edited, and commented on document describing

1

CPSC181ABriefHistoryofComputerScience

Spring2010Prof.JenniferWelch

Sources•  SchneiderandGersting,AnInvitationtoComputerScience▫  primarysource

•  SlidesfromProf.JohnKeyser• AmericanUniversity’sComputingHistoryMuseum▫  http://www.computinghistorymuseum.org/• VirginiaTech’sHistoryofComputingwebsite:▫  http://ei.cs.vt.edu/~history•  ComputerHistoryMuseum▫  http://www.computerhistory.org/•  IEEEAnnalsoftheHistoryofComputing(Journal)▫  http://www.computer.org/portal/site/annals/index.jsp• AndrewHodges’websiteaboutAlanTuring▫  http://www.turing.org.uk/turing/index.html

2

EarlyMathematics&Computation

• BabyloniansandEgyptians,>3000yrsago▫ numericalmethodsforgeneratingtablesofsquareroots,multiplication,trig▫ Applications:navigation,agriculture,taxation• Greeks,>3000yrsago▫ geometryandlogic• Indians,~600AD▫ startedusingplaceholdersandadecimalnumbersystem,similartomodern▫ ideaspreadtoMiddleEast• ArabsandPersians~800AD▫ algorithms

3

AFamousArabMathematician

•  Inearly800sAD•  WorkedatcenteroflearninginBaghdad•  Wrotebook:HisabAlJabrWal‐Mugabalah▫  Describedhowtocomputeseveralpractical

problems,includinglinearandquadraticequations

▫  TranslatedintoLatin,spreadthroughoutEurope

•  Solidifiednumbersysteminusenow:“Arabicnumerals”

•  AlJabrgivesustheword“algebra”•  Al‐Khowarizmigivesustheword“algorithm”

4

Abu Jafar Mohammed Ibn Musa Al-Khowarizmi

fig. from Donald Knuth's website

EarlyComputingDevices• Abacus▫  About3000BC▫  Differenttypes,developedovertime

  Commonwire/bead:about500BC▫  Somestillinusetoday•  JohnNapier’sBones▫  1617:Stickswithnumbersonthem▫ Usetodo4basicarithmeticoperations• WilliamOughtred’sSlideRule▫  1622:Stickswithlogarithmicscale,slidealong▫ Muchmorecomplexcalculations▫ Usedwellinto20thcentury(replacedbyhandheldcalculator)

5

fig from http://www.ee.ryerson.ca/~elf/abacus

MoreEarlyComputingDevices•  BlaisePascal▫  1642:Firstnumericalcalculatingmachine(additionandsubtraction)

• GottfriedLeibniz▫  1673:4‐functionmechanicalcalculator(addition,subtractions,multiplication,division)

6

•  Used cogs and gears •  Showed mechanization can simplify and speed

up numerical calculations

fig from http://www.tcf.ua.edu/AZ/ITHistoryOutline.htm

Page 2: Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf · Friend of Charles Babbage • Translated, edited, and commented on document describing

2

AreTheseDevicesComputers?

• Notconsideredgeneral‐purposecomputers• Theylack▫ memory▫ abilitytobeprogrammed

7

FirstProgrammableDevicewithMemory

• Aloom!• Usedtoweaveclothwithpatterns• InventedbyJosephJacquard,France,1804• Automatedloomusingpunchedcardstocreatepattern▫ holeincardatacertainplacecauseschangeintheweaveatcorrespondingplaceinthefabric

8

fig from Wikipedia, Jacquard loom entry

JacquardLoom

• Memory:thecards• Programmable:changethecards• Capturehumanexpertiseinamachine• TargetofLudditemovement▫ riotsagainstIndustrialRevolution▫ threatenedcraftguilds

9

fig from britannica.com

CharlesBabbage&DifferenceEngine

• England,1822‐1830:Designedandworkedona“DifferenceEngine”forcalculations▫ Computetablesoflogarithms▫ Neverfinishedit:currentmanufacturingtechnologynotabletoproviderequiredprecisionincogsandgears▫ Otherslaterbuiltone:7feetby11feet,3tons,4000movingparts

10

figs from cbi.umn.edu/about/babbage.html

CharlesBabbage&AnalyticalEngine

• 1833:Designedthe“AnalyticalEngine”▫ Couldnotgetfunding,sinceneverfinishedfirstmachine,butfullydesigned  tobesteam‐powered▫ Thiswasthefirstgeneralpurposecomputer!• Separatestoragefromcalculation• Familiarparts:▫ mill<=>ALU▫ store<=>memory▫ operator<=>controlunit▫ output<=>input/output• Usedpunchedcards

11

fig from www.sciencemuseum.org.uk

AdaLovelace

• AugustaAdaByron,CountessofLovelace▫  DaughterofpoetLordByron▫  FriendofCharlesBabbage•  Translated,edited,andcommentedondocumentdescribingBabbage’sAnalyticalEngine

12

•  Described its potential as a general purpose computer –  Wrote “programs” that could be run on it. As a result, she is

often considered the world’s first computer programmer. –  Wrote about potential uses, even for computer music

fig from women.cs.cmu.edu/ada

Page 3: Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf · Friend of Charles Babbage • Translated, edited, and commented on document describing

3

FollowingBabbage

• Generalpurposecomputingwaited▫ Instead,severaldifferentspecificdevices• Mostcomputationaldevicesstillmechanical▫ Typewriters(1868)▫ Addingmachines(1875)andcalculators▫ Cashregisters(1879)

13

U.S.Census

• Takenevery10years• Bylate1800s,wasbecomingmoredifficult▫ 1880censusnottabulateduntil1888▫ Seriousdoubtthat1890censuscouldbefinishedbeforetimeforfollowingcensus▫ Competitionheldtodevelopautomaticenumerationandtabulationofcensusdata

• Afundamentalneedfor“large‐scale”computing

14

HermanHollerith

• HermanHollerithdevelopedtabulatingmachine▫ Developedmachinesforencodinginformationonpunchedcards▫ Cardscouldbesortedandtabulated

• 1890censuscompletedin2yearswithHollerith’smachines▫ Alsosavedmillionsofdollars

15

fig from www.columbia.edu/acis/

history/census-tabulator.html

FurtherDevelopment

• Workcontinuedonmachinestoadd,tabulate,record.▫  CharlesFlint:Computing,Tabulating,Recording(CTR)company,followeduponHollerith’swork.▫  ThomasJ.WatsonrenamesCTRtoInternationalBusinessMachines(IBM)in1924.

•  Individualmachineswerecreatedforeachstageofaprocess▫  Forexample,separatemachinestocount,sort.▫ Mostmachinesencodedinformationonpunchedcards.

16

fig from www-03.ibm.com/ibm/history/

EncodingInformation

• Punchedcardswereusedtostoreinformation▫ Jacquard’sLoom▫ Babbage’smachines▫ Hollerith’stabulatingmachines▫ IBMmachines• Punchedcardsandpunchedtapeseenasawayofachievingcompatibility,transferofdata.

17

fig from www.columbia.edu/acis/history/census-tabulator.html

ImpactofWorldWarII

• Applicationsofthe1940's:▫ ballisticstables▫ troopdeploymentdata▫ secretcodes

18

•  Severalresearchprojects,fundedbymilitary,focusedondevelopingcomputerso  onbothsides

fig from www.diggerhistory.info

Page 4: Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf · Friend of Charles Babbage • Translated, edited, and commented on document describing

4

HowardAiken&MARKI(ASCC)

•  FundedbyNavyandIBM,atHarvard•  1930'sand40's•  general‐purposeprogrammablecomputer•  usedrelays,magnetsandgears•  usedbinaryvalues(0/1)insteadofdecimal(0to9)•  usedvacuumtubesandelectriccurrent(on/off)insteadof10‐toothedgears• memory:72numbers•  speed:23‐digitmultiplicationin4seconds

19

fig from www-03.ibm.com/ibm/history/

GraceMurrayHopper•  JoinedNavalReservein1943▫  AsLieutenant,becameoneofthefirstprogrammersoftheMarkI▫  EventuallyreachedrankofAdmiral

• Noteddifficultyofprogramminginmachinelanguage▫ Wantedwayofspecifyingprogrammingmorenaturally▫  Createdthefirstcompiler,A‐O▫  Subsequentlycreatedothercompilers,becamestrongproponentofcompilers/programminglanguages▫  Developedprogramminglanguages,notablyCOBOL(1959)

20

fig from computerhistory.org fig from cs.vassar.edu/history/hopper

ENIAC•  "ElectronicNumericalIntegratorandComputer"•  1940's•  Motivatingapplication:calculatefiringtables(howtoaimgundependingondistance,windspeed,temp,etc.)•  FundedbyArmyatUniv.ofPenn.•  JohnMauchly&PresperEckertleaddesigners•  Firstfullyelectronicgeneral‐purposecomputer•  Vacuum‐tubebased•  Requiredrewiringtochangeprogramoriginally•  100feetlong,10feethigh,30tons•  1000timesfasterthanMarkI

21

figs from www.library.upenn.edu/exhibits/rbm/mauchly/jwm8b

OtherWar‐TimeProjects

• Z1:Germany,KonradZuse▫ destroyedduringWWIIbeforecompleted• ABC:IowaState,JohnAtanasoff&CliffordBerry▫ solvesystemsoflinearequations• Colossus:England,AlanTuring▫ crackedGermanEnigmacode▫ shroudedinsecrecyuntil1970's

22

fig from http://en.wikipedia.org/wiki/Atanasoff–Berry_Computer

AspectStillMissing…

• Alltheseprojectsstillmissingakeyfeatureofmoderncomputers• Programmingthesemachineswasdoneexternallywith▫ wires▫ connectors▫ plugboards• Memorystoredonlydata,notinstructions• Tochangetheprogram,needtorewire▫ Ex:6000switchesonENIAC

23

VonNeumannArchitecture

• JohnVonNeumann,mathematician,physicist,chemist,computerscientist,…atPrinceton• workedonENIAC• realizedshortcoming• Keyidea:▫ encodeinstructionsasbinaryvaluesandstoreinmemoryalongwithdata▫ Tochangeprogram,rewritesequenceofinstructions

24

fig from mathdl.maa.org

fig from cs.cmu.edu/ref/pgss/lecture/11

Page 5: Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf · Friend of Charles Babbage • Translated, edited, and commented on document describing

5

WhereDidtheIdeaComeFrom?• AndrewHodgescreditsAlanTuring’sworkontheconceptoftheUniversalTuringMachine• Notionofonemachineforalltasks,althoughitseemsobvioustousnow,wasnotatallobvious:

25

Howard Aiken, 1956

“Ifitshouldturnoutthatthebasiclogicsofamachinedesignedforthenumericalsolutionofdifferentialequationscoincidewiththelogicsofamachineintendedtomakebillsforadepartmentstore,IwouldregardthisasthemostamazingcoincidencethatIhaveeverencountered.”

fig from http://www.turingarchive.org/browse.php/K/7/9-16

StoringPrograms

• EDVAC–ElectronicDiscreteVariableAutomatedCalculator▫ JohnvonNeumanndescribed▫ UPenn,1950▫ DesignedbeforeENIACoperational▫ becamecommercialUNIVACI,boughtbyCensusBureau

• EDSAC–ElectronicDelayStorageAutomatedCalculator▫ MauriceWilkes,Cambridge▫ BasedonEDVACideas,butcompletedfirst(1949)

26

U.S. Army Photo of EDVAC

TheModernEra,1950‐Present

• Changesmoreevolutionarythanrevolutionary• Focusedonmakingcomputers▫ faster▫ smaller▫ cheaper▫ morereliable▫ easiertouse• Conventionallydividedintorough"generations"

27

FirstGeneration,1950‐1959

• Firstcommercialcomputers• Firstsymbolicprogramminglanguages• binaryarithmetic• vacuumtubesforstorage• punchedcardI/O

28

1+1=10

SecondGeneration,1959‐1965

• transistorsandcorememories▫ reducedsizeandcost,increasedreliability• firstdisksformassstorage• firsthigh‐levelprogramminglanguagesandprogrammers▫ FORTRAN,COBOL• firstoperatingsystems

29

C AREA OF TRIANGLE READ INPUT TAPE 5, 501, IA, IB, IC 501 FORMAT (3I5) C CHECK THAT SUM OF 2 SIDES IS > THIRD SIDE IF (IA) 777, 777, 701 701 IF (IB) 777, 777, 702 702 IF (IC) 777, 777, 703 703 IF (IA+IB-IC) 777, 777, 704 ...

ThirdGeneration,1965‐1975

• Integratedcircuits▫ componentsarephotographicallyetchedontopiecesofsilicon▫ furtherreductioninsizeandcost• firstmini‐computers▫ desk‐sizedinsteadofroom‐sized• time‐sharedoperatingsystems• appearanceofsoftwareindustry• introductionofcomputingstandardsforcompatibility

30

Page 6: Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf · Friend of Charles Babbage • Translated, edited, and commented on document describing

6

FourthGeneration,1975‐1985

• Verylargescaleintegratedcircuits(VLSI)▫ completesystemononecircuitboard▫ furtherreductioninsizeandcost,increasedreliability• firstmicro‐computer▫ desk‐topmachine,insteadofdesk‐sized• furthergrowthofsoftwareindustry• computernetworks• graphicaluserinterfaces

31

FifthGeneration,1985‐?

• Ultra‐largescaleintegratedcircuits(ULSI)▫ morethan1,000,000elementsononechip• supercomputersandparallelprocessors• laptopsandhand‐heldcomputers• wirelesscomputing• on‐lineterabytestoragedevices• globalnetworksanddistributedsystems• artificialintelligence• hi‐resgraphics,visualization,virtualreality• multimediauserinterfaces

32

TheFuture?

• Speedoflightlimitationsuggeststhatitwon'tbepossibletocontinuetheexponentialincreasesinspeedwithasingleprocessor▫ vonNeumannbottleneckofsequentiality• Solutionisconcurrency,doingmorethanonethingatatime▫ parallelcomputing,distributedcomputing▫ latestbuzzwordis"multicore"▫ challengeishowtodesignalgorithmstoexploitthemultiplecores

33