Early Mathematics & Computation A Famous Arab...

Preview:

Citation preview

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

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

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

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

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

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