The History of Computing - Professor Benson
Download
Report
Transcript The History of Computing - Professor Benson
Introduction to Computing
Chapter 1
History of Computing
History of Computing
William Johnson
[email protected]
Julia Benson-Slaughter
[email protected]
Chapter 1
History of Computing
Before computers were developed
First generation computing
Second generation computing
Third generation computing
Fourth generation computing
The current (fifth) generation and beyond.
Before the Industrial
Revolution
The Renaissance was a time of great
philosophical and scientific progress,
including critical milestones in
mathematics that would lead toward the
invention of the computer.
Critical Mathematical
Concepts
Boolean Algebra
Published by George Boole in 1854
Clarifies the mathematical field of Boolean
algebra
Forms the numerical basis for computer
hardware
George Boole's contribution
Early Calculating Devices
Before approximately 1820
Basic calculating devices to support simple
mathematics
Arithmetic
Algebra
Devices were
Mechanical in nature
No data storage
Early Calculating Devices
Abacus
Invented about 3000 BC
Originated in either China or the Indus
River Valley area
Discussion of the abacus
Demonstration of an abacus (video)
Early Calculating Devices
Napier's Bones
Device using lattice multiplication for
calculating products and quotients
Mechanical, but not mechanized
Napier's Bones: How They Work (video)
Early Calculating Devices
Slide Rule
Invented by William Oughtred in 1622
Following up on Napier's work with both
logarithms & Napier's Bones
Performs a variety of mathematical
calculations
How to Use a Slide Rule (video)
Early Calculating Devices
The Rechenuhr (Calculating Clock)
First mechanical calculating device
Built by Wilhelm Schickard in 1623
Functioned accurately but had several
mechanical flaws and was never placed
into full production
Early Calculating Devices
Pascaline
Developed in 1643 by French
mathematician Blaise Pascal
Mechanical device that could add and
subtract (in other words, a basic calculator)
Pascal and his Calculator
How the Pascaline Works (video)
Early Calculating Devices
Von Leibnitz “Stepped Reckoner”
Built in 1673 by German mathematician Gottfried
Wilhelm von Leibnitz
Inventor of differential & integral calculus
Calculating device improving on the Pascaline
Could multiply as well as add and subtract (but
still couldn't divide).
The Industrial Revolution
The 1700s and early 1800s were a time of
great political and social unrest (examples:
the American and French Revolutions). As
a result, mathematics and science took a
back seat to other endeavors until the
political and social climate settled down and
the Industrial Revolution began early in the
19th century.
19th Century Computing Devices
Products of the Industrial Revolution
Mechanical devices
Limited data storage
Small quantities
Clumsy methods
Design often outpaced available technology
19th century contributions to computing
Jacquard's “Loom”
Invented by Joseph Jacquard between 18011804
Built upon the work of Basile Bouchon, Jean
Falcon and Jacques de Vaucanson to create
an automatic weaving loom.
Wove intricately patterned cloth based on
instructions contained on punched cards.
The first programmable stored instruction
machine actually built.
Jacquard Loom: Early Computer Programing
(video)
Charles Babbage
Charles Babbage can be considered the
single most important individual in the pre20th century development of the computer.
Lucasian Professor of Mathematics at
Cambridge University
Co-founder of the Royal Astronomical
Society
Cryptographer who broke Vignere's autokey
cypher (thought to be unbreakable)
Inventor of the locomotive cow-catcher
Difference Engine
Version 1: 1820-1830
Solved polynomial equations of the form
ax2+bx+c to an accuracy of six places
Gear-driven machine
All calculating was done with repeated
addition
Difference Engine Simulator
Difference Engine
Prototype consisting of 1/7 of the final
machine was built in 1832
Remainder was never completed
Image from the Science Museum via computerhistory.org
Analytical Engine
Designed 1833-1842
Stored program machine to perform any
type of arithmetic calculation
Numerous limitations prevented Babbage
from actually building it
Politics, economics, personalities were as
much a factor as technology
Analytical Engine
Comprised of three main parts
“Mill” for calculations
“Store” for storing data
Input/output device
Design corresponds in many ways to the
basic architecture of the modern
computer
Analytical Engine
Babbage describes the Analytical Engine
in his autobiography
Machine has not been built to this day
Plan28.org Has been established to build
the Analytical Engine by 2020
Watch John Graham-Cunningham's TEDx
talk on “The Greatest Machine that Never
Was”
Difference Engine #2
Designed between 1847 and 1849
Improved upon the original Difference
Engine with a simpler design to achieve
the same computing power
Again, not built during Babbage's lifetime
Was finally built between 1985 and 2002
by the Science Museum of London,
exactly to Babbage's original plans
Difference Engine #2
NPR story about Charles Babbage's
Difference Engine
Ada Lovelace
Augusta Ada Byron King, Countess of
Lovelace and daughter of poet Lord Byron
Contemporary & colleague of Babbage
Regarded as the first computer programmer
1843 translation & expansion of Luigi
Menabrea's paper described the sequence of
operations which the Analytical Engine should
perform to carry out calculations
Hollerith Census Tabulator
Invented in 1890 by Herman Hollerith
Machine for
sorting punched cards based on patterns
formed by the holes
counting or tabulating data from these cards.
Hollerith 1890 Census Tabulator
Hollerith Census Tabulator
Allowed completion of processing the
1890 census in one year (as opposed to
eight years for the 1880 census)
Later used for accounting, sales analysis,
statistical reporting, bookkeeping
Beginnings of IBM
Hollerith formed the Tabulating Machine
Company in 1896.
In 1924 the Tabulating Machine Company
became International Business Machines
Corporation, aka IBM
Premier computing company through the
1980s
Classroom Activity
Primitive Computing Devices
A number of primitive computing devices have been simulated with computer
programs:
Abacus
Napier's Bones
Virtual Slide Rule
Difference Engine
Experiment with each simulator to discover which types of arithmetic
calculations that the device can handle. For each device, write a paragraph
describing the calculations you were able to complete, with examples of each
type. What calculations could all the devices handle? Were there any
calculations that no device could handle, and if so what?
Take a screenshot of each device solving a specific arithmetic problem. Add a
description of the problem and how successful you were at solving it with that
device. Put each screenshot in your document along with the paragraph about
the device.
Which device was the easiest to use? Which was the most difficult?
The 1930s and World War II
Provided the real push for the invention of
the modern-day computer
War, defense, and financial incentives were
powerful motivation
Cryptography and calculation were the
primary purposes for developing calculating
machines.
The Turing Machine
Described in a paper published by Alan
Turing in 1936
Concept that formed a theoretical basis for
the modern-day computer
a hypothetical construct merging
the idea of a machine,
the action of the mind,
logical instruction
Intended to model any computation possible
with no limitations on data
The Turing Machine
A Turing Machine Overview (video)
Lego Turing Machine (video)
Simulated Turing Machine (JavaScript
application)
Atanasoff-Berry Computer
Developed in 1939-40 by Iowa State
University Professor John Atanasoff and
Clifford Berry, one of his graduate students.
Considered the first (partially) electronic
digital computer.
Fully electronic for data storage & calculation
via ~300 vacuum tubes
Mechanical switches for selecting operations
Contained memory, but nothing that we would
consider a CPU
Atanasoff-Berry Computer
Separated data storage from data
processing via different hardware
components
Used binary (base-2) numbers rather than
decimal.
No stored-program capability
Had to be manually controlled to run
programs
Replica of the original ABC (video)
The Z Family of Computers
Developed by German Konrad Zuse
Worked alone with little knowledge of
concurrent developments in Great Britain &
the United States
Z Series evolved between 1935 and 1948
Z1 Computer
Built between 1936 & 1938
Considered first programmable binary
computing machine
Used Boolean logic
Handled binary floating point (real) numbers
Strictly mechanical except for electrical
motor for synchronizing calculations
Panoramic view of reconstructed Z1
Simulation of the Z1 Adder
Z3 Computer
Built by Zuse in 1941 as a top-secret
military project
Implemented many improvements over
Z1
Stored-program, fully programmable machine
Replaced most mechanical parts with
electromechanical relays
Based on a binary floating-point number and
switching system.
Reconstruction of the Z3 (video)
Z3 Simulation (in German)
Z3 Adder Simulation (in German)
Enigma vs. Bombe
Electromechanical encryption/decryption
devices for Morse code radio telegraphy
(data transmission)
Enigma was the German machine
Bombe was the British machine
How Enigma works
Watch the Bombe in action
Lorenz Cipher & Colossus
Lorenz cipher was used by the German
Tunny machine to encrypt military
teleprinter (wired) transmissions using
International Telegraphy Alphabet No. 2
instead of Morse code
Cryptanalysis project ran in parallel with
the Enigma/Bombe project
Colossus was the British machine
developed to decipher this encryption.
The Significance of Colossus
If not for the secrecy surrounding
Colossus, it would be considered the first
large-scale electronic computer.
Eight of the ten machines were destroyed
soon after the war's end.
The remaining two were destroyed a decade
later.
Project information was not declassified until
1975.
MARK I computer
Developed in 1943-1944 in a joint
IBM/Harvard University effort led by Howard
Aiken.
Contained
760,000 electronic parts
500 miles of wiring
3000 electromechanical relays for switches
Weighed five tons & occupied a whole
building on Harvard campus
Considered the world's first programmable
computer until the existence of Colossus
became known.
MARK I computer
Based on the then-current generation of
IBM tabulating machines (successors of
Hollerith's machine)
Because of the switches, the MARK I is
not considered an electronic computer
Could handle addition, subtraction,
multiplication, and division, as well as
logarithmic & trigonometric calculations
Mark I Computer (video)
The First Computer “Bug”
A small moth trapped in one of the
electromechanical switches in the MARK II
Found by a team led by Navy Lieutenant
Grace Murray Hopper, logged on
September 19,1945 at 15:45 hours
ENIAC
Developed by Presper Eckert and John
Mauchly in 1946.
First fully electronic computer
No electromechanical switches
No moving parts
Based on vacuum tube technology to
replace electromechanical relays.
Contained
18,000 vacuum tubes
80,000 resistors/capacitors
ENIAC
Weighed 30 tons & took up over 15000
square feet of space
Used decimal rather than binary numbers
Did not store information
Programming involved completely rewiring
the machine for each job that it was to
perform
ENIAC Simulation
ENIAC: The First Computer (video)
The ENIAC Programmers
Six women became the first ENIAC
programmers in 1945
Kathleen McNulty, Jean Bartik, Frances
“Betty” Holberton, Marlyn Meltzer, Frances
Spence and Ruth Teitelbaum
Only individuals to manually program ENIAC
before it became a stored-program version
Interview with Jean Bartik (video)
The Women of ENIAC from the IEEE
Annals of the History of Computing
EDVAC
Successor to ENIAC
developed by Eckert &
Mauchly between 1944
& 1949
Improved on ENIAC by
Adding stored program
capability using design
created by John von
Neumann in 1944
Using binary numbers
instead of decimal
numbers
Machine Language
Instructions telling the computer what to
do
Written as a sequence of patterns using
the symbols 0 and 1
Each pattern represented a specific
instruction or value
UNIVAC I
Completed in 1951 by Eckert & Mauchly
First commercially available computer
First one was sold to the Census Bureau for
$300,000
Successfully predicted the outcome of the
1952 presidential election using a program
written by Grace Murray Hopper
Remington-Rand Presents the UNIVAC
(video)
Assembly Language
Created by Grace Murray Hopper in 1952
Used mnemonics (abbreviations) to represent
the bit patterns of 0s and 1s that told the
computer what to do. produced the first
programming language translator to translate
assembly language into machine language
(0s and 1s) for programming.
FORTRAN
Introduced in 1956
FORTRAN is short for FORmula
TRANslator
First high level programming language,
using English-like words & statement
structure
Developed by a team of scientists at IBM
led by John Backus for science and
engineering applications
FORTRAN
Designed for “number crunching" and
complex calculations
Current version is Fortran 2008
Tenth generation of the language
The Transistor
Began to replace the vacuum tube in the
late 1950s (solid-state devices). Provided
increased reliability and speed as well as
decreased size of computers.
1960
Introduction of COBOL (COmmon Business
Oriented Language), first business oriented
high level language. Introduction of LISP
(LISt Processing language) for artificial
intelligence applications.
1962
Development of SABRE, the first airline
passenger reservation system, in a joint
IBM/American Airlines effort.
Critical Mathematical
Concepts
Logarithms
First described by John Napier in 1614 in
Mirifici Logarithmorum Canonis Descriptio
(Description of the Marvelous Canon of
Logarithms)
http://historycomputer.com/CalculatingTools/logarythms.h
tml
1964
BASIC (Basic All-purpose Symbolic
Instruction Code) introduced as an easy-tolearn programming language. PL/I
(Programming Language/I) introduced as a
synthesis of the best of FORTRAN and
COBOL (and is a huge and extremely
complex language as a result).
1965
Introduction of the integrated circuit (IC) —
transistors on a chip to replace an entire
circuit board of separate transistors wired
together to perform some function. Again,
increased reliability and speed of
computers while decreasing size.
1969
Development of the UNIX operating system
at Bell Laboratories
1970
The Department of Defense creates
ARPANET, the precursor to the Internet, by
connecting together four computers.
They were located in the respective
computer research labs of UCLA
(Honeywell DDP 516 computer), Stanford
Research Institute (SDS-940 computer),
UC Santa Barbara (IBM 360/75), and the
University of Utah (DEC PDP-10).
1971
Introduction of the first microprocessor, the
Intel 4004, containing an entire CPU on a
chip.
Led to supercomputers and PCs (both ends
of the computing spectrum!).
Pascal
Introduced in 1971
First strongly typed programming
language
Developed by Nicolas Wirth as a tool for
teaching programming with good style &
technique
1973
Decision by Judge Earl Richard Larson, in
the lawsuit Honeywell vs. Sperry Rand, that
the patent issued for the ENIAC computer
was invalid, and that the ABC invented by
John Atanasoff was the first electronic digital
computer.
1974
The C programming language was
developed at Bell Labs by Brian Kernighan
and Dennis Ritchie, a couple of researchers
just playing around with a spare computer.
C is considered to be a middle-level
language, with most features of high level
languages but also the fine control of
machine that assembly language gives.
The Altair 8080
The first personal computer
Introduced in kit form in 1975
Intel 8080 processor with 256 bytes of RAM
More information about the Altair 8080
Apple Computer, Inc
Started in 1977 by Steve Jobs and Steve
Wozniak
Introduced the Apple I
First off-the-shelf personal computer.
FORTRAN 77
Standardization completed in 1977
First version of Fortran to be considered a
structured programming language
Apple Computer, Inc
Started in 1977 by Steve Jobs and Steve
Wozniak
Introduced the Apple I
First off-the-shelf personal computer.
Apple II
Introduced in 1978
First personal computer with secondary
storage capability
5 1/4” floppy disk drive
360 kilobytes of storage per disk
VisiCalc
Introduced in 1978
First spreadsheet package
Developed by Dan Bricklin and Bob
Frankston
1980
Smalltalk, the first object-oriented language,
invented at Xerox PARC
1981
The first IBM PC introduced
http://upload.wikimedia.org/wikipedia/commons/thumb/f/f1/Ibm_pc_5150.jpg/647px-Ibm_pc_5150.jpg
1982
dBASE, the first database program for
personal computers, introduced.
1986
Pixar is founded:
http://www.pixar.com/about/Our-Story
1990
Tim Berners-Lee develops HyperText
Markup Language, providing the foundation
for the development of the World Wide Web
Microsoft releases the first stable &
commercially successful version of
Windows, Windows 3.0
1991
Introduction of the Linux operating system,
a UNIX-derived program initially developed
by Linus Torvalds
1994
Tim Berners-Lee invents Mosaic, the first
"web browser"
Intel releases the first Pentium
microprocessor CPU
1995
Introduction of the Java programming
language by software architect, James
Gosling
Resources
Bit by Bit
Visual Journey Through Computing History
History of Computers
Timeline of Computer History