cmsc 120: visualizing information 1/29/08 introduction to computing
TRANSCRIPT
CMSC 120: Visualizing CMSC 120: Visualizing InformationInformation
1/29/081/29/08
Introduction to Introduction to ComputingComputing
What is Computing?What is Computing?
To determine by calculatingTo determine by calculating To use a computerTo use a computer
What is a Computer?What is a Computer?
A device that accepts information (data), A device that accepts information (data), processes it according to specific instructions,processes it according to specific instructions, and provides the results as new informationand provides the results as new information
First ComputersFirst Computers
Abacus
0 1 2 3 45 6 7 8 9 Number Systems
Pen and Paper
People
*A computer: a person who works with numbers
Mechanical Age (1450-Mechanical Age (1450-1840)1840)
Pascaline Blaise Pascal (1642)Blaise Pascal (1642) A gear driven adding A gear driven adding
machinemachine
Slide Rule
Early 1600sEarly 1600s An analog computerAn analog computer
Analog: represents data by measurement ofa continuous physical variable
Mechanical Age (1450-Mechanical Age (1450-1840)1840)
Gottfried Wilhelm Gottfried Wilhelm von Leibniz von Leibniz (1670s)(1670s)
Add, subtract, Add, subtract, multiply, dividemultiply, divide
Mechanically Mechanically unreliableunreliable
Stepped Reckoner
Mechanical Age (1450-Mechanical Age (1450-1840)1840)
Punch Card Joseph Jacquard (1810)Joseph Jacquard (1810) Weaving instructions for looms stored in cards Weaving instructions for looms stored in cards
with holes punched in themwith holes punched in them
Mechanical Age (1450-Mechanical Age (1450-1840)1840)
The Difference Engine (1822)
The Analytical Engine
Charles Charles BabbageBabbage
Followed program in punched Followed program in punched cardscards
Store information in memory Store information in memory unitunit
Make decisionsMake decisions
Analytical Engine AnecdoteAnalytical Engine Anecdote
Babbage’s collaborator was Ada, Countess Babbage’s collaborator was Ada, Countess of Lovelace, daughter of Lord Bryonof Lovelace, daughter of Lord Bryon
Sponsored, tested, publicized deviceSponsored, tested, publicized device
““First Programmer”First Programmer”
Stated that the engine would never Stated that the engine would never “originate anything”“originate anything”– A machine, no matter how powerful, could thinkA machine, no matter how powerful, could think
Electro-mechanical Age (1840 – Electro-mechanical Age (1840 – 1940)1940)
Hermann Hollerith (end Hermann Hollerith (end 1919thth century) century)
Created to tabulate US Created to tabulate US CensusCensus
Used electricityUsed electricity
Information punched Information punched into cardsinto cards
Metal pins open and Metal pins open and closed electrical closed electrical circuitscircuits
Electronic Tabulating Machine Population: 63 million; 6 weeksPopulation: 63 million; 6 weeks Founding product of Founding product of
International Business International Business Machines (IBM)Machines (IBM)
Electro-mechanical Age (1840 – Electro-mechanical Age (1840 – 1940)1940)
IBM + Harvard IBM + Harvard under leadership of under leadership of Howard Aiken Howard Aiken (1930s)(1930s)
Storage: Mechanical Storage: Mechanical relay telephone relay telephone switchesswitches
Input: Punch CardsInput: Punch Cards
OutputOutput
No decision makingNo decision making
Mark I
51 feet in length5 tons
750, 000 parts
What is the difference between a calculator and a computer?
The First Computer BugThe First Computer Bug
Grace Hopper (1909 – Grace Hopper (1909 – 1992)1992)
One of first One of first programmers of Mark Iprogrammers of Mark I
Developed first Developed first compilercompiler
Electronic Age (1840 – Today)Electronic Age (1840 – Today)
Electronic Numerical Integration and Calculator (ENIAC)
John Mauchly and J. Presper Eckert (finished 1946)John Mauchly and J. Presper Eckert (finished 1946) Initially secret military project begun during WWII Initially secret military project begun during WWII University of PennsylvaniaUniversity of Pennsylvania
Electronic Age (1840 – Electronic Age (1840 – Today)Today)
Occupied 1500 square feetOccupied 1500 square feet
Weighed 30 tonsWeighed 30 tons
Used vacuum tubesUsed vacuum tubes– >17,000>17,000
Able to make decisions: Able to make decisions: first true computerfirst true computer
Programming involved Programming involved wiring and switch flippingwiring and switch flipping
ENIAC
Electronic Age (1840 – Electronic Age (1840 – Today)Today)
John von Neumann John von Neumann (1940s)(1940s)
Storing computer Storing computer instructions in a instructions in a central processing unitcentral processing unit (CPU)(CPU)– No longer necessary to No longer necessary to
flip switches or rewireflip switches or rewire
Large Corporations, Large Corporations, US GovernmentUS Government
Stored Program Computer
Processing Model:Processing Model:– Input dataInput data– Store data while being processedStore data while being processed– Process data according to specific Process data according to specific
instructionsinstructions– Output the results in the form of new dataOutput the results in the form of new data
Electronic InnovationsElectronic Innovations
Vacuum tubesVacuum tubes– Large and expensiveLarge and expensive– UNIVAC: 35 tonsUNIVAC: 35 tons– 1000 calculations per second1000 calculations per second
Transistor: semiconductor used as an amplifier or Transistor: semiconductor used as an amplifier or electronically controlled switchelectronically controlled switch– Reduced sizeReduced size– 10,000 claculations per second10,000 claculations per second– IBM model 650 (1960s)IBM model 650 (1960s)– Magnetic tape replaced punched cardsMagnetic tape replaced punched cards
Electronic InnovationsElectronic Innovations
Integrated CircuitsIntegrated Circuits– Replacement of transistors with integrated circuits or Replacement of transistors with integrated circuits or
chipschips– Silicon blocks with logic circuits etched onto surfaceSilicon blocks with logic circuits etched onto surface– Millions of calculations per secondMillions of calculations per second
– IBM System 360 was one of the first computers to use IBM System 360 was one of the first computers to use integrative circuitsintegrative circuits
– Hospitals and Universities could now own computersHospitals and Universities could now own computers
Modern ComputersModern Computers
1951 – 1958: Vacuum tubes (First 1951 – 1958: Vacuum tubes (First Generation)Generation)
1959 – 1964: Transistors (Second Gen)1959 – 1964: Transistors (Second Gen)
1965 – 1970: Integrated Circuits (Third Gen)1965 – 1970: Integrated Circuits (Third Gen)
1970 + : Large Scale Chips and 1970 + : Large Scale Chips and Microprocessors (Fourth Gen)Microprocessors (Fourth Gen)
Modern ComputersModern Computers
MicroprocessorMicroprocessor: a CPU an a single chip: a CPU an a single chip– Designed in 1970 by Marcian Hoff (Intel Designed in 1970 by Marcian Hoff (Intel
Corporation)Corporation)
MicrocomputerMicrocomputer: a desktop size computer: a desktop size computer– ALTAIR (1975)ALTAIR (1975)– Apple (Stephen Wozniak and Steven Jobs; 1977)Apple (Stephen Wozniak and Steven Jobs; 1977)
The State of Modern The State of Modern ComputingComputing
Computing power Computing power doubles every 18-doubles every 18-24 months24 months
From the BBC
Hardware Hardware (Computer Architecture)(Computer Architecture)
Input DevicesInput Devices MemoryMemory Central Processing UnitCentral Processing Unit Output DevicesOutput Devices
Input Memory Output
CPU
MemoryMemory Read Only Memory (ROM)Read Only Memory (ROM)
– Most basic operating instructionsMost basic operating instructions– PermanentPermanent
Random Access Memory (RAM)Random Access Memory (RAM)– Main memoryMain memory– Data and instructions are temporarily storedData and instructions are temporarily stored
RegistersRegisters– Temporary memory locations within the CPUTemporary memory locations within the CPU
Auxiliary MemoryAuxiliary Memory
CPUCPU
Directs all activities of the computerDirects all activities of the computer All information flows through the CPUAll information flows through the CPU ““Brain”Brain”
– Only executes tasks according to Only executes tasks according to instructions it has been giveninstructions it has been given
Arithmetic Logic Unit (ALU)Arithmetic Logic Unit (ALU)– AddsAdds– ComparesCompares