Computer Revolution - ODU Computer Science

Computer Revolution
Module 1 – Section 4
Computer Revolution
Section 4
Early Calculating Machines
Early Calculating Machines
• Abacus
• Slide rule
• Mechanical calculator
The first computing device could have been as simple as a set of stones used to represent
bushels of wheat or herds of animals. Figuring the total number of animals in two combined
herds or trading cattle for wheat could be represented with stones. When people followed a
standard set of procedures to perform calculations with these stones, they created a digital
counting device, the predecessor of a computer.
The abacus illustrates how these ancient computers worked. This computing device could be
seen during a stroll through the marketplace of ancient Beijing, and it is still used today. An
abacus has a wooden frame holding wires on which beads are strung. To show a number, you
pull down the beads so that each rod represents a digit. For example, you use four rods to
represent the number 3,741. To solve a math problem, you simply follow a set of instructions
telling you when and where to move the beads. This eventually gave way to paper and pencil.
Some of us can probably remember another calculating machine called the slide rule. I was
able to find a great website that actually demonstrates how one can be used to perform
calculations - interactively!
We will skip on quickly to the mechanical calculator. The earlier forms of the calculator made
use of clockwork gears and levers. Blaise Pascal, who was only nineteen years old at the time,
invented the first known automatic calculating machine in France in 1642. To add and subtract,
the machine, the Pascaline, rotated wheels to register values and used a lever to perform the
carrying operation from one wheel to another.
Early Calculating Machines
• Stepped reckoner
• Textile industry – Jacquard Loom
• Difference engine
The next significant improvement in calculating devices was made in 1673 by Gottfried Wilhelm
von Leibniz. Leibniz invented a calculator that could add, subtract, multiply, and divide
As inventors worked to improve mechanical calculators, they needed a better way to input data
than setting clockwork dials. The means for this better way had already been created, and in an
unlikely place - the weaving rooms of France.
In the early nineteenth century, a French weaver named Joseph Jacquard developed a loom
that could be programmed. The loom used large cards with holes punched in them to control
automatically the pattern that was woven into the material. The result was a thick, cloth with
repetitive floral or geometric patterns. The punched cards used in Jacquard's loom were
adapted by others to serve as the primary form of computer input. Punched cards were used to
enter both data and programs, until about 20 years ago.
Charles Babbage, born and raised in England in the early 1800s, created the first modern
computer design. While working on his doctorate, he had to solve many complex formulas, and
he could not solve these problems manually in a reasonable length of time. To solve the
equations, he began developing a steam-powered machine, which he called the difference
Early Calculating Machines
through those of today
• Analytical engine
• The 1890 Census machine
Later, Babbage turned to planning a far more ambitious device, the analytical engine. The
machine was designed to use a form of punched card similar to Jacquard's punched cards for
data input. This device would have been a full-fledged modern computer with a recognizable
input, output, processing, and storage cycle. Unfortunately, the technology of Babbage's time
could not produce the parts required to complete the analytical engine. Ada Lovelace, the
daughter of the poet Lord Byron and Babbage’s assistant, wrote the set of instructions the
analytical engine would follow to compute Bernoulli numbers. She is considered the first
programmer. The programming language Ada used by the Department of Defense was named
after her.
The next major figure in the history of computing was Dr. Herman Hollerith, a statistician. The
United States Constitution calls for a census of the population every ten years, as a mean of
determining representation in the U.S. House of Representatives. By the late nineteenth
century, the hand-processing techniques were taking so long the 1880 census took more than
seven years to tabulate. The need to automate the census became apparent.
Dr. Hollerith devised a plan to encode the answers to the census questions on punched cards.
He also developed a punching device that could process fifty cards in a minute. These
innovations enabled the 1890 census to be completed in two and one-half years.
In the late 1930s, the English mathematician Alan Turing wrote a paper describing all the
capabilities and limitations of a hypothetical general-purpose computing machine that became
known as the Turing Machine.
World War II created a need for the American military to calculate trajectories for missiles
quickly. The ENIAC was the result, though it was not completed until two months after the war
ended. ENIAC could do five multiplication operations in a second. It was difficult to use
because every time it was used to solve a new problem, the staff had to rewire it completely to
enter the new instructions. This led to the stored program concept, developed by John von
Neumann. The computer's program is stored in internal memory with the data.
The first electronic computers were complex machines that required large investments to build
and use. The computer industry might never have developed without government support and
funding. World War II provided a stimulus for governments to invest enough money in research
to create powerful computers. The earliest computers, created during the war, were the
exclusive possessions of government and military organizations. Only in the 1950s did
businesses become producers and consumers of computers. And only in the 1960s did it
become obvious that a huge market existed for these machines.
To describe the computer's technological progress since World War II, computer scientists
speak of "computer generations." Each generation of technology has its own identifying
characteristics. We're now using fourth-generation computer technology, and some experts say
a fifth generation is already upon us.
The evolution of digital computing is often divided into generations. Each generation is
characterized by dramatic improvements over the previous generation in the technology used to
build computers, the internal organization of computer systems, and programming languages.
Although not usually associated with computer generations, there has been a steady
improvement in algorithms, including algorithms used in computational science.
6 Generations of Modern Computers
1st Generation 1945 - 1959
1st Generation 1945-1959
• Made to order operating
• Different binary coded programs
told it how to operate
• Difficult to program and limited
versatility and speed
• Vacuum tubes
• Magnetic drum storage
The first generation of computers used vacuum tubes, were large and slow, and produced a lot
of heat. The vacuum tubes failed frequently. The instructions were given in machine language,
which is composed entirely of the numbers, 0’s and 1’s. Very few specialists knew how to
program these early computers. All data and instructions came into these computers from
punched cards. Magnetic drum storage was primarily used, with magnetic tape emerging in
2nd Generation 1959-1963
2nd Generation 1959-1963
Memory – magnetic core
Assembly language
Printers and memory
Programming languages
First-generation computers were notoriously unreliable, largely because the vacuum tubes kept
burning out. The transistor took computers into the second generation. They are small, require
very little power, and run cool. And they're much more reliable. Memory was composed of
small magnetic cores strung on wire within the computer. For secondary storage, magnetic
disks were developed, although magnetic tape was still commonly used. They were easier to
program because of the development of high level languages, that are easier to understand and
are not machine specific. Second-generation computers could communicate with each other
over telephone lines, transmitting data from one location to another. The problems stemmed
from slow input and output devices which left the machine idle. The consequences were parallel
programming and multi-programming.
3rd Generation 1964 - 1971
3rd Generation 1964-1971
• Quartz clock
• Integrated circuit
• Operating systems
Integrated circuits took computer technology into the third generation. These circuits incorporate
many transistors and electronic circuits on a single wafer or chip of silicon. This allowed for
computers that cost the same, yet offered more memory and faster processing.
Silicon Valley was born with the creation of Digital Equipment Corporation (DEC), and
introduction of the minicomputer. Time-sharing became popular, as well as a variety of
programming languages. The result was a competitive market for language translators and the
beginning of the software industry.
Another significant development of this generation was the launching of the first
telecommunications satellite.
4th Generation 1971 - 1984
4th Generation 1971 – 1984
• LSI – Large Scale Integration
• VLSI – Very Large Scale
• Chip
• General consumer usage
• Networks
The microprocessor emerged, a tiny computer on a chip. It has changed the world! The
techniques, called very large scale integration (VLSI), used to build microprocessors enable chip
companies to mass produce computer chips that contain hundreds of thousands, or even
millions, of transistors.
Microcomputers emerged, aimed at computer hobbyists. Personal computers became popular
first with the Apple computer, followed by the IBM compatibles.
High speed computer networking in the form of local area networks (LANs) and wide area
networks (WANs) provide connections within a building or across the globe.
5th Generation 1984 – 1990
5th Generation 1984 – 1990
• Parallel processing
• Multi-processing
• Chip advancement
The development of the next generation of computer systems is characterized mainly by the
acceptance of parallel processing. Until this time parallelism was limited to pipelining and vector
processing, or at most to a few processors sharing jobs. The fifth generation saw the
introduction of machines with hundreds of processors that could all be working on different parts
of a single program. The scale of integration in semiconductors continued at an incredible pace by 1990 it was possible to build chips with a million components - and semiconductor memories
became standard on all computers.
6th Generation 1990 – now
6th Generation 1990 – now
• This is the future
• What new advancements lie
• What changes will be big enough
to create this new generation?
This generation is beginning with many gains in parallel computing, both in the hardware area
and in improved understanding of how to develop algorithms to exploit diverse, massively parallel
architectures. Parallel systems now compete with vector processors in terms of total computing
power and most expect parallel systems to dominate the future.
One of the most dramatic changes in the sixth generation will be the explosive growth of wide
area networking. Network bandwidth has expanded tremendously in the last few years and will
continue to improve for the next several years. T1 transmission rates are now standard for
regional networks, and the national ``backbone'' that interconnects regional networks uses T3.
Networking technology is becoming more widespread than its original strong base in universities
and government laboratories as it is rapidly finding application in K-12 education, community
networks and private industry. The federal commitment to high performance computing has been
further strengthened with the passage of two particularly significant pieces of legislation: the High
Performance Computing Act of 1991, which established the High Performance Computing and
Communication Program (HPCCP) and Sen. Gore's Information Infrastructure and Technology
Act of 1992, which addresses a broad spectrum of issues ranging from high performance
computing to expanded network access and the necessity to make leading edge technologies
available to educators from kindergarten through graduate school.
Pioneers of Computing
Pioneers of Computing
Charles Babbage
Konrad Zuse
John von Neumann
Alan Turing
Charles Babbage - One of the first renown pioneers, referred to as the "Father of Computing"
for his contributions to the basic design of the computer through his Analytical machine. His
previous Difference Engine was a special purpose device intended for the production of tables.
Konrad Zuse – a German engineer who built the first program-controlled computing machine in
the world. He has brought his inventions, patent outlines, talks and lectures to paper between
1936 and 1995.
John von Neumann - one of this century’s preeminent scientists, along with being a great
mathematician and physicist, was an early pioneer in fields such as game theory, nuclear
deterrence, and modern computing. Von Neumann’s experience with mathematical modeling at
Los Alamos, and the computational tools he used there, gave him the experience he needed to
push the development of the computer. Also, because of his far reaching and influential
connections, through the IAS, Los Alamos, a number of Universities and his reputation as a
mathematical genius, he was in a position to secure funding and resources to help develop the
modern computer. In 1947 this was a very difficult task because computing was not yet a
respected science. Most people saw computing only as making a bigger and faster calculator.
Von Neumann on the other hand saw bigger possibilities.
Alan Turing - Turing was a student and fellow of King's College Cambridge and was a graduate
student at Princeton University from 1936 to 1938. While at Princeton Turing published "On
Computable Numbers", a paper in which he conceived an abstract machine, now called a Turing
Machine. The Turing Machine is still studied by computer scientists. He was a pioneer in
developing computer logic as we know it today and was one of the first to approach the topic of
artificial intelligence.
Important Machines and Developments
Important Machines
• IBM 650 introduced in 1953
• IBM 7090 first 2nd Generation computer
• Texas Instruments and Fairchild
semiconductor both announce the
integrated circuit in 1959
• DEC PDP 8 the first microcomputer sold for
$18,000 in 1963
• IBM 360 introduced in 1964, used
integrated circuits
• 1968 Intel is established by Robert Noyce,
Grove, and Moore
• 1970 floppy disk introduced
• IBM 650 introduced in 1953
• IBM 7090 the first of the "second-generation" of computers build with transistors was
introduced in 1958.
• Texas Instruments and Fairchild semiconductor both announce the integrated circuit in
• DEC PDP 8 the first minicomputer sold for $18,000 in 1963.
• The IBM 360 is introduced in April of 1964. It used integrated circuits
• In 1968 Intel is established by Robert Noyce, Grove, and Moore.
• In 1970 the floppy disk was introduced
Important Machines
Intel’s 8008 and 8080
DEC PDP 11/45
Jobs and Wozniak build the Apple I
DEC VAX 11/780
Motorolla 68000
Compaq IBM-compatible PC
Sony and Phillips CD-ROM
Next computer by Steve Jobs
DEC 64-bit RISC alpha
Intel’s Pentium
• 1972 -- Intel's 8008 and 8080
• 1972 -- DEC PDP 11/45
• 1976 -- Jobs and Wozniak build the Apple I
• 1978 -- DEC VAX 11/780
• 1979 -- Motorola 68000
• 1981 -- IBM PC
• 1982 -- Compaq IBM-compatible PC
• 1984 -- Sony and Phillips CD-ROM
• 1988 -- Next computer by Steve Jobs
• 1992 -- DEC 64-bit RISC alpha
• 1993 -- Intel's Pentium
This evolution of machines has provided the benefits of improved reliability, reduced size,
increased speed, improved efficiency, and lower cost with each evolution.
Taxonomy of Computers
Taxonomy of Computers
• Mainframes
• Super computers
• Microprocessors
A mainframe is a very large and expensive computer capable of supporting hundreds, or even
thousands, of users simultaneously. In the hierarchy that starts with a simple microprocessor (in
watches, for example) at the bottom and moves to supercomputers at the top, mainframes are
just below supercomputers. In some ways, mainframes are more powerful than supercomputers
because they support more simultaneous programs. But supercomputers can execute a single
program faster than a mainframe. The distinction between small mainframes and minicomputers
is vague, depending really on how the manufacturer wants to market its machines.
Microprocessors take the critical components of a complete computer and house it on a single
tiny chip.
Wirth’s Law
Wirth’s Law
• The software gets slower faster
than the hardware gets faster
• What does this mean?
Pictures and history of computer:
Computer Laws:
Obstacles to a Technological Revolution:
Computers used in society:
Technological revolution:
Abacus Applet:
5 th generation computer:
Computer in use:
Wirth’s law: