History of Computing
Mechanical Era (1600-1940)
Mechanical computers were designed to reduce the time required for calculations and increase the accuracy of the results
Drawbacks
Speed of operation limited by the inertia of moving parts (gears and pulleys)
Cumbersome, unreliable, and expensive
Difference Engine
Automatic computation of math tables. Can only do one mathematical operation that is addition
Both engines plagued by mechanical problems
Analytic Engine
Perform any of the four basic math operation
Punch cards
Modern structure: I/O, Storage, ALU
Add in 1 second, multiply in 1 minute
George Boole (1847)
George Boole was a mathematician, philosopher and logician. He worked in the fields of differential equations and algebraic logic, and is best known as the author of The Laws of Thought (1854) which contains Boolean algebra. Boolean logic is credited with laying the foundations for the information age.
Konrad Zuse (1938)
First working mechanical computer, the Z1
Binary machine
German government decided not to pursue development – World war-II already started
Electronic Era
1st Generation (1945 – 1954)
ENIAC
Developed for calculating artillery firing tables
Designed by Mauchly and Eckert of the University of Pennsylvania.
Generally regarded as the first electronic computer
Colossus probably the first, but was classified until recently
Big
18,00 tubes
70,000 resisters
10,000 capacitors
6,000 switches
30 x 50 feet
140 kW of power
Decimal number system used
Programmed by manually setting switches
Von Neumann Architecture (Princeton Architecture)
Von Neumann and Goldstine took the idea of ENIAC and developed a concept of storing a program in the memory
This architecture came to be known as the von Neumann architecture and has been the basis for virtually every machine designed since then
Features
Data and instructions (programs) are stored in a single read-write memory
Memory contents are addressable by location, regardless of the content itself.
Sequential execution
Harvard architecture used physically separate memory and data paths for program and memory.
Harvard Mark-I built by IBM
2nd Generation (1955 – 1964)
Technology change
Transistors
High level languages
Floating point arithmetic
3rd Generation (1965 – 1974)
Introduction of integrated circuits
Semiconductor memory
Microprogramming
Multiprogramming
4th Generation (1975 – 1990)
Large scale integration/ VLSI
Single board computers
5th Generation (1991 - present)
VLSI/ULSI
Computer communications networks
Artificial intelligence
Massively parallel machines
Stored Program Concept
In the late 1940s, John von Neumann proposed that electronically stored instructions can be executed on their own without human intervention. These instructions (program) tell the computer what to do.
Instructions can be stored in memory and executed in sequence referencing the data on which to operate. This concept is a breakthrough that led to the birth of the software. Manchester Baby was the first computer to electronically store the program.