Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf ·...
Transcript of Early Mathematics & Computation A Famous Arab Mathematicianwelch/teaching/181.s10/history.pdf ·...
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