COM 111
Introduction to Computer Science
Dr. Kondwani G. Munthali
History of Computers and Computer
Science
September 6, 2018
Objectives
History of computers
Tally sticks, Abacus, Napiers Bones, Slide rule, Pascaline,
Stepped Reckoner, Jacquard Loom, Arithmometer, Difference
Engine and Analytical Engine,
Generations of computers
Hardware, software
History of Computer Science
3 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Earliest computers
Originally calculations were computed by
humans, whose job title was computers.
These human computers were typically
engaged in the calculation of mathematical
expressions.
The calculations of this period were
specialized and expensive, requiring years of
training in mathematics.
4 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computers…
Tally sticks
A tally stick is an ancient memory aid device to
record and document numbers, quantities, or even
messages.
5 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computers…
Abacus
a mechanical device used to
aid an individual in performing
mathematical calculations
Invented in Babylonia in 2400
B.C.
First used in China in around
500 B.C.
in the form we are most
familiar
It used to perform basic
arithmetic operations.
6 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computers…
Napier’s Bone
Invented by John Napier in 1614.
Allowed the operator to multiply, divide and calculate square
and cube roots by
Slide Rule
Invented by William Oughtred in1622.
Based on Napier's ideas about logarithms.
Used primarily for multiplication, division, roots, logarithms,
Trigonometry
Not normally used for addition or subtraction.
7 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computers…
Pascaline
Invented by Blaise Pascal in 1642.
It is too expensive
Stepped Reckoner
Invented by Gottfried Wilhelm Leibniz in 1672
Can add, subtract, multiply and divide automatically.
Jacquard Loom
invented by Joseph-Marie Jacquard in 1881
automatic loom controlled by punched cards.
8 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computers…
Arithmometer
A mechanical calculator invented by Thomas de Colmarin 1820,
The first reliable, useful and commercially successful calculating
machine.
The machine could perform the four basic mathematic
functions.
The first mass-produced calculating machine.
Difference Engine and Analytical Engine
It an automatic, mechanical calculator designed to tabulate
polynomial functions.
Invented by Charles Babbage in1822 and 1834
It is the first mechanical computer.
9 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computers…
First Computer Programmer
In 1840, Augusta Ada Byron suggests to Babbage that he use
the binary system.
She writes programs for the Analytical Engine.
Scheutzian Calculation Engine
Invented by Per Georg Scheutz in 1843.
Based on Charles Babbage's difference engine.
The first printing calculator.
Tabulating Machine
Invented by Herman Hollerithin 1890.
Used in summarizing information and accounting.
10 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computers…
Havard Mark 1
Also known as IBM Automatic Sequence Controlled Calculator (ASCC)
Invented by Howard H. Aikenin 1943
The first electro-mechanical computer.
Z1
The first programmable computer.
Created by Konrad Zusein Germany from 1936 to 1938.
To program the Z1 required that the user insert punch tape into a
punch tape reader and all output was also generated through punch
tape.
Atanasoff-Berry Computer (ABC)
The first electronic digital computing device.
Invented by Professor John Atanasoff
and graduate student Clifford Berry at Iowa State University between 1939 and
1942.
11 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers
The history of computer development is often referred to in
reference to the different generations of computing devices.
Each generation of computer is characterized by a major
technological development (hardware and software) that
fundamentally changed the way computers operate,
Resulting in increasingly smaller, cheaper, more powerful, more
efficient and reliable devices.
There are five generations in the history of computers:
First generation–1946 -1958
Second generation–1959 -1964
Third generation–1965 -1970
Fourth generation–1971 –today
Fifth generation–Today to future
12 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers…
First generation–1946 -1958
Hardware used
Vacuum tubes for circuitry with basic arithmetic
taking a few milliseconds, and
Magnetic tape / magnetic drum were used as
memory
Issues
Bulky
Consume more power with limited performance
High cost
Generated a lot of heat leading to malfunctions
13 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers…
First generation–1946 -1958
Software
Used assembly language to prepare programs - translated into
machine level language for execution.
100 to 1000 fold increase in speed relative to the earlier mechanical
and relay based electromechanical technology
(Z1, Havard Mark 1, Tabulating Machine, Arithomometer)
Punched cards and paper tape were invented to feed programs and
data and to get results.
14 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers…
First generation–1946 -1958
Mainly used for scientific computations examples include:
ENIAC - Electronic Numerical Integrator And Calculator
The first electronic general-purpose computer
Completed in 1946.
Developed by John Presper Eckertand John W. Mauchl.
EDSAC – Electronic Delay Storage Automatic Calculator
EDVAC – Electronic Discrete Variable Automatic Computer
The First Stored Program Computer
Designed by Von Neumann in 1952.
It has a memory to hold both a stored program as well as data.
UNIVAC – Universal Automatic Computer IBM 701
The first commercial computer.
Designed by J. Presper Eckert and John Mauchly.
15 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers…
Second generation–1959 -1964
Hardware
Transistors replaced vacuum tubes
Magnetic ferrite core memories were used as main memory which is a
random-access nonvolatile memory
Magnetic tapes and magnetic disks were used as secondary memory
Punched cards continued during this period also.
Advantages
Small in size
Less heat generated
Lesser power consumption and better performance
Lower cost
16 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers…
Second generation–1959 -1964
Software
High level languages such as FORTRAN, COBOL etc were used
Compilers were developed to translate the high-level program into
assembly language program and then machine language.
Separate input-output processors were developed that could operate
in parallel with CPU.
1000 fold increase in speed.
17 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers…
Second generation–1959 -1964
First computers were developed for the atomic energy
industry.
Increasingly used in business, industry and commercial organizations
18 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers
Third generation–1965 -1970
Integrated Circuits replaced transistors
Miniaturized group of transistors placed on silicon
chips, called semiconductors
Operating system software introduced
(efficient sharing of a computer system by
several user programs)
allowed the device to run many different
applications at one time
Introduced microprogramming, parallel
processing (pipelining, multiprocessor system
etc.), multiprogramming, multi-user system
(time shared system) etc.
Semiconductor memories (RAM & ROM)
replaced the initial magnetic core memories
Punched cards and printouts, were replaced
with keyboards and monitors and interfaced
with an operating system,
19 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers
Third generation–1965 -1970
Cache and virtual memories were introduced
Cache memory makes the main memory appear faster than it really is.
Virtual memory makes it appear larger
High level languages were standardized by ANSI eg. ANSI FORTRAN,
ANSI COBOL etc
All this led to:
Smaller & better performance
Comparatively lesser cost
Faster processors
Computers for the first time became accessible to a mass
audience (IBM 360, PDP-8)
Database management, multi-user application,
online systems
airline reservation, interactive query systems, automatic industrial control etc
emerged during this period.
20 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers
Fourth generation–1971 –today
Microprocessors were introduced as CPU
Complete processors and large section of main
memory could be implemented in a single chip
Tens of thousands of transistors can be placed in a
single chip
Semiconductor memory chips were used as the
main memory.
Secondary memory was composed of hard
disks – Floppy disks & magnetic tapes were
used for backup memory
21 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers
Fourth generation–1971 –today
Improved parallelism, pipelining cache memory and virtual memory
CRT screen, laser & ink jet printers, scanners etc were developed.
LAN and WANS were developed (where desktop work stations
interconnected)
Introduced C language and Unix OS
Introduced Graphical User Interface
Examples include
Intel’s 8088,80286,80386,80486 .., Motorola’s 68000, 68030, 68040, Apple II, CRAY
I/2/X/MP etc)
22 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers
Fifth generation–Today to future
Describe current computer system that have a dominant
organizational or application driven feature.
Computers based on artificial intelligence are available
Use extensive parallel processing, multiple pipelines, multiple
processors etc
Massive parallel machines and extensively distributed system
connected by communication networks fall in this category.
Object oriented language like JAVA suitable for internet
programming has been developed.
23 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
Generations of computers
Fifth generation–Today to future
Portable note book computers introduced
Storage technology advanced – large main memory and disk storage
available
Plethora of www services
e-mail, e Commerce,Virtual libraries/Classrooms, multimedia applications
etc.
New and better operating systems developed
Quantum mechanism and nanotechnology (smaller but improved) is
radically changing the phase of computers.
Examples include:
IBM notebooks, Pentium PCs-Pentium 1/2/3/4/Dual core/Quad core..
SUN work stations, Origin 2000, PARAM 10000, IBM SP/2
24 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computer Science
History of algorithms
Algorithms are derived from algebra, which was developed in
the seventh century by an Indian mathematician.
In today’s computers, it is algorithms in essence that runs the
system and computation.
Computer Programs are the manifestation of algorithms in machine
language.
25 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computer Science…
Development of binary logic
Just as with algorithms, computers rely on something else that
originated in ancient times - binary logic.
The binary system was invented by the Indian mathematician Pingala
in the 3rd century BCE.
In this system any number can be represented with just zeroes and ones.
It was not until the 1700’s however, that binary logic was formally
developed from the binary system by German mathematician
Gottfried Leibniz.
Leibniz is also known for having invented Calculus independently of
Newton.
In binary logic, the zeroes and ones take on the values of false and
true, respectively, or off and ons.
More than a century later, George Boole refined the process in his
publication of Boolean Algebra.
26 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computer Science…
Charles Babbage and Ada Lovelace
Together are often thought of as the founders of modern
computing.
Babbage invented the Difference Engine, and, more importantly,
the Analytical Engine.
The latter is often recognized as a key step towards the formation of
the modern computer.
Ada Lovelace, daughter of famous poet Lord Byron, is known
for describing-in algorithms- the processes the Analytical
Engine was intended for.
In this sense she is considered a pioneer in computer programming.
27 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computer Science…
The Analytical Engine
Described as a mechanical general purpose computer that
would run off a steam engine.
Steam engines were huge 30 by 10 meters
It was never built
However, in logical design it anticipated modern general
purpose computers by about a century
The Harvard Mark I (1st large scale digital computer in the USA) was
based on the analytical engine years later.
28 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computer Science…
Computer Science Beginnings
While Charles Babbage laid the foundations of Computer
Science, Alan Turing is regarded as the “Father of Computer
Science”
Alan Turing invented the Turing Machine
A basic abstract symbol manipulating device that can be used to
simulate the logic of any computer that could possibly be constructed.
Again it was not actually constructed, but its theory yielded many
insights
The Turing Test is Turing’s idea of how to determine a machines
capability as far as thought is concerned
29 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
History of Computer Science…
The key features of the Turing machine model of computation
are:
A finite amount of internal state.
An infinite amount of external data storage.
A program specified by a finite number of instructions in a
predefined language.
Self-reference: the programming language is expressive enough to
write an interpreter for its own programs.
Determining the gender of a person by interrogation
1st with two people in separate rooms and a third (interrogator) in
another
Replace one of the two people with a computer and ask if the
interrogator can tell the difference
Pass if there are equal interrogator guesses when a person is used as
when a computer
30 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science
The rest of Semester
Step back: How did we get here (History of Computers)
Computer types and uses
Computer hardware:
Central Processing Unit (CPU), Random Access Memory (RAM), Read
Only Memory (ROM), bus, Hard Disks (HD), floppies, Compact Disk-
Read Only Memory (CDROM), tapes, screen, keyboard, mouse, printer
Computer concepts:
bit, byte, word, binary and ASCII coding,
Introduction to operating systems:
types, basic features of common OS, management of Central Processing
Unit (CPU), Random Access Memory (RAM), Input/Output and security.
Practice: Disk Operating System (DOS), Windows XP and Linux
Boolean Algebra
Introduction to Network Engineering
Software packages:
31 Kondwani Godwin Munthali (PhD) 9/6/2018
Department of Computer Science