Upload
arleen-bruce
View
221
Download
1
Tags:
Embed Size (px)
Citation preview
Introduction to Computing
History of Computing
William Johnson [email protected]
Julia Benson-Slaughter [email protected]
Chapter 1History of Computing
Chapter 1History 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 1801-
1804 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 pre-20th 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 ActivityPrimitive Computing DevicesA 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://history-computer.com/CalculatingTools/logarythms.html
1964 BASIC (Basic All-purpose Symbolic
Instruction Code) introduced as an easy-to-learn 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.
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