Sotirios G. Ziavras Department of Electrical and Computer Engineering, New Jersey Institute of Technology, Newark, New Jersey 07102, U.S.A.

Similar documents
Computers in Engineering COMP 208. A Brief History. Mechanical Calculators. A Historic Perspective Michael A. Hawker

Computers in Engineering COMP 208

Overview of a computer

Great Inventions written by Bob Barton

Early Calculating Tools

Algorithm: Program: Programming: Software: Hardware:

Welcome to COS151! 1.1

A Brief History of Computer Science. David Greenstein Monta Vista High School, Cupertino, CA

MECHANICAL COMPUTATION, BABBAGE AND HIS ENGINES

HISTORY OF COMPUTING

1: History, Generation & Classification. Shobhanjana Kalita, Dept. of CSE, Tezpur University

HISTORY OF COMPUTERS HISTORY OF COMPUTERS. Mesleki İngilizce - Technical English. Punch Card. Digital Data. II Prof. Dr. Nizamettin AYDIN.

Chapter 1: An Introduction to Computer Science. Invitation to Computer Science, C++ Version, 6-th Edition

Notes By: Shailesh Bdr. Pandey, TA, Computer Engineering Department, Nepal Engineering College

History of Modern Computing Lesson 1

(History of Computers) Lecture # 03 By: M.Nadeem Akhtar. Lecturer. URL:

The Generations of Computers

Part (01) Introduction to Computer

A Brief History of Computer Science

qa Chronological Outline of the Evolution of Computing devices

Computer Organization CS 206T

In this chapter, you will learn about: The definition of computer science. Algorithms. Invitation to Computer Science, C++ Version, Third Edition

Introduction to Computer Systems

History of Computing. Slides from NYU and Georgia Tech

Welcome to COSC Introduction to Computer Science

MICROPROCESSOR SYSTEM DESIGN

You Will Need Floppy Disks for your labs!

EVOLUTION OF COMPUTERS. In the early years, before the computer was invented, there are several inventions of counting machines.

Chapter 1. The Big Picture

Fundamentals of Digital Computers The mechanical computer age began with the advent of the abacus in 500 B.C by Babylonians. The abacus, which was

ENG 101 Lesson -6. History of Computers

COMS 1003 Fall Introduction to Computer Programming in C. History & Computer Organization. September 15 th

History of Computers. What Is A Computer? Egyptian Numbers. Ancient Tools for Computation. Introduction to Computers

4. History of computers and applications

7. History of computers and applications

HST250 (section 740) Exam #1 Wednesday, February 10, 2010

Computer Systems. Hardware, Software and Layers of Abstraction

Downloaded from

The trusted, student-friendly online reference tool. Name: Date:

Chapter 1 History & Hardware

From the Abacus To the iphone


Copyright 2012 Pearson Education, Inc. Publishing as Prentice Hall

LECTURE -I BASIC CONCEPTS OF COMPUTERS

Fundamentals of Python: First Programs. Chapter 1: Introduction Modifications by Mr. Dave Clausen

ALGORITHMS AND PROGRAMMING

CHAPTER 1 COMPUTER OVERVIEW

The History of Computers

I1100 Introduction to Computer Science Semester: 1 Academic Year: 2018/2019 Credits: 3 (30 hours) Dr. Antoun Yaacoub

The History of Computers. How did this all get started?

Chapter 2 HISTORICAL DEVELOPMENT OF COMPUTERS

CHAPTER1 : Part 2 INTRODUCTION & HISTORY OF COMPUTERS. UNIVERSITI TENAGA NASIONAL Generates Professionals

CS101 Lecture 29: Brief History of Computing

Introduction To Computers. About the Course

A (BRIEF) HISTORY OF COMPUTING. By Dane Paschal

Chapter 1: Introduction to Computers

Learning Objectives. In this chapter you will learn about:

Chapter 1: Introduction to Computers. In this chapter you will learn about:

Chronological History of the Pre-Computer Developments

COMP 102: Computers and Computing Lecture 1: Introduction!

Introduction to Computer Science. What is Computer Science?

Early Aids To Calculation

HISTORY OF CALCULATION. Evolution of Computation

CSC101 Furman University Professor Batchelor

Chapter 1. Introducing the Universal Machine

An Incomplete History of Computation

Corso di Biblioteche Digitali

Monday, January 27, 2014

Part 1: Computer and Information Literacy

Computer Science 1400: Part #2: Getting Here: The First Computers ( )

Computer System architectures

CS 1 Notes 1 - Early Computing and 2 - Electronic Computing

Describe the layers of a computer system

Computer History CSCE 101

Babbage Analytical Machine

CS140 Lecture 09a: Brief History of Computing

Evolution of the Computer

UNIT 1. Variables Binary Math

COURSE OVERVIEW. Introduction to Computer Engineering 2015 Spring by Euiseong Seo

Unit 4: Emerging Technologies. A History of Personal Computing by Mrs. Ogletree

CS2110 CONCLUSION Spring 2018

History 5/8/18 CONCLUSION. Punch cards

Ancient System of Operations: Computing with Mathematical Devices. By: Calvin L. Fitts Jr. History of Mathematics. Ms.

CHAPTER 1 Introduction

1-1 Computer Structure

Wednesday, January 28, 2018

Engineering Problem Solving with C++, Etter/Ingber

Computer Architecture. Prologue. Topics Computer Architecture. Computer Organization. Organization vs. Architecture. History of Computers

John Vincent Atanasoff The father of the computer (October 4, June 15, 1995)

Chapter 2. The History and Development of Computers

Computer science First Class Lecture 1

Figure 1-1. A multilevel machine.

Key Events in the History of Computing

Let s begin with the very beginning...

6.823 Computer System Architecture

A Short History of Computing. Tim Bergin Computing History Museum American University

THE HISTORY OF COMPUTERS (Introduction)

Computer Evolution. Budditha Hettige. Department of Computer Science

Milestones in Computer Architecture

time step first instruction second instruction

Transcription:

HISTORY OF COMPUTATION Sotirios G. Ziavras Department of Electrical and Computer Engineering, New Jersey Institute of Technology, Newark, New Jersey 07102, U.S.A. Keywords: Computer Systems, Early Computers, Electronic Computers, Generations of Electronic Computers, Mainframe Computers, Mechanical Computers, Microprocessor Architectures, Minicomputers, Parallel Computers, Supercomputers. Contents 1. Early (Non-Electronic) Computing Machines 2. Electronic Computers 2.1. First Generation (1945-1955) 2.2. Second Generation (1955-1965) 2.3. Third Generation (1965-1974) 2.4. Fourth Generation (1974-1989) 2.5. Fifth Generation (1990-present) Glossary Bibliography Biographical Sketch Summary Modern life has been affected tremendously by advances in information technologies. Computers and their applications are in the core of these advances. Attempts to design and build devices to aid humans in their computing tasks go back to ancient times. Mechanical computing devices appeared more than 2000 years ago. The era of electronic computers started in the 1940s. Electronic computers are now ubiquitous in modern societies. They appear in many forms, from primitive units that control functions in automobiles and home appliances, to very advanced supercomputers for the design of aircraft and the simulation of climate changes. Understanding the history of computing can help us make reasonable predictions about its future. This article begins with a brief summary of computing techniques and technologies invented by early civilizations, discusses major breakthroughs in the design of electronic computers, and presents preeminent computing technologies of our times. Finally, it touches upon expected computing technologies of the future. 1. Early (Non-Electronic) Computing Machines Any article on the history of computation can have omissions. An attempt is made here to present the most important advances in the field, in chronological order. Transaction records were inscribed on clay tablets before 1,000 B.C. Accustomed to finger counting, many early civilizations adopted number systems with five or ten as the base. The Sumerian, Greek, Roman, and Arabic number systems were some of the inventions. The abacus was invented about 5,000 years ago in Babylonia. Basic calculations are

performed by hand-sliding beads on racks. It was also adopted later by other civilizations. Modified versions of the abacus are still used in the Orient. The Antikythera Mechanism was a special-purpose computer built in Greece around 87 B.C. It was found in a shipwreck close to Antikythera, a Greek island. It was used to determine the location of the sun, the moon, and other planets based on the calendar year. It is a very sophisticated device that employs many bronze gears and an axle which can be rotated by hand to input the current date. It may have been used for celestial navigation. Euclid's geometrical reasoning enabled him in the 4 th century B.C. to develop algorithms for process description. Between 250 and 230 B.C., the Sieve of Eratosthenes algorithm was introduced to find prime numbers between any two given bounds. The Peruvians devised later a handy gadget, called a Quipu, consisting of strings and knots to assist them in the counting process. They used a form of decimal notation, where the position and form of a knot indicated tens, hundreds, etc. In 1623, Wilhelm Schickard, a Professor of German origin, constructed the calculating clock for adding and subtracting six-digit numbers. It contains six dented wheels geared through a "mutilated" wheel; every full turn of the latter wheel allows the wheel located at the right to rotate one 10 th of a full turn. An overflow detection mechanism rings a bell. In 1642, at the age of nineteen Blaise Pascal invented the Pascaline, an adding calculator to help his father in his tax collection job. This is often considered to be the first mechanical adding machine. A set of notched dials moves internal gears in a way that a full rotation of a gear causes the gear to the left to advance one 10 th of a full turn. Although the first prototype contained only five gears, later units were built with six and eight gears. His adding machine of 1652 assumed six-digit numbers; six number dials on a row represent an input number. Each dial has ten opennings into which a stylus is inserted for dialing. Subtraction is performed by adding the 10's complement of the subtrahend to the minuend. The British Samuel Morland also produced in 1666 a mechanical calculator for addition and subtraction. John Napier of Scotland invented a device comprising a set of vertical rods, where each rod is divided into ten squares. The Napier bones device was used to read directly rows containing multiples of numbers stored on the first row. Napier was also the inventor of the concept of logarithms, which are used to convert multiplications into simple additions. Baron Gottfried Wilhelm von Leibniz, a German philosopher and mathematician, improved Pascal's device in 1674 to perform multiplication and division of numbers. His machine employs gears and dials. He was heavily influenced by Pascal's notes and drawings. Leibniz s Stepped Reckoner uses a special type of gear. It is a cylinder with nine bar-shaped teeth of incrementing length which are parallel to the cylinder s axis. When a drum is rotated by using a crank, a regular ten-tooth gear which is fixed on a sliding axis is rotated zero to nine positions depending on its relative position to the drum. There is one set of gears for each digit. When the drum is rotated, it generates in the regular gears a movement proportional to their relative position. This movement is then translated by the device into multiplication or division depending on the direction of the rotating drum. Leibniz is also known from his attempt to develop a generalized

symbolic language and a related algebra to automate reasoning. As a result, he coinvented calculus; the other co-inventor was Sir Isaac Newton. In 1777, the third Earl of Stanhope in England produced a multiplying calculator. The French Joseph-Marie Jacquard introduced in 1801 the concept of sequencing punched cards to control the weaving patterns and the use of fabrics in an automatic loom. The introduction of these looms caused riots against the replacement of people by machines in the second half of the 18 th century. Jacquard's invention was of paramount importance for both the industrial revolution and the technological one, as shown later. In the 1820s, mechanical calculators were used widely. Charles Xavier Thomas de Colmar, a native of France, invented the Arithmometer to implement the four basic arithmetic functions. Addition and subtraction are carried out through a single accumulator and ripple carry propagation is employed. Multiplication and division use repeated addition and subtraction through manual control. The arithmometer was used widely until the First World War. He used the stepped drum mechanism invented by Leibniz as the digital-value actuator. Charles Babbage, a professor of mathematics at the University of Cambridge, is considered to be the father of modern computing. His focus for many years was task automation through the invention of appropriate devices. He had noticed by 1812 that machines were compatible with mathematics. Both could be used to repeat sequences of steps without mistakes. He proposed in 1822 his Difference Engine that could add and subtract to produce output tables for given functions; a single algorithm is run using finite differences with polynomials. It was to be powered by steam, would contain a stored program, and would print the results. He had constructed only a portion of the Difference Engine by 1832. However, he shifted his attention in 1833, at the age of 42, to the design of a general-purpose computing machine, the Analytical Engine. He produced a workable design in 1836. He made a major revision in 1837. He did not attempt to build the machine at that time, even though he worked intensively until the late 1840s on refinements of his design. He finally begun in 1856 an attempt to build the machine. Many parts of his machine had been constructed by the time of his death, in 1871. Babbage did not publish a detailed account of his machine. Luigi Menabrea of Italy published a relatively good description of the machine, after he had attended relevant lectures given by Babbage. Ada King, the Countess of Lovelace and daughter of the poet Lord Byron, was an assistant to Babbage who translated Menabrea's description into English in 1843 by also inserting her own notes. This work was done under the supervision of Babbage. However, her translation does not contain enough information to evaluate the feasibility of the design. Similarly, Babbage's private notes, now residing in the Science Museum in London, contain extensive, but incomplete information. A preliminary feasibility evaluation of the machine based on the latter notes can be found in the bibliography. Ada King was also more effective and instrumental than Babbage in securing funds for the construction of the machine. She also introduced the idea of program loops (where sequences of instructions are executed repeatedly) and developed several programs for the machine. Therefore, she is known as the first computer programmer. ADA, a programming language developed for the U.S. Defense Department, honors her.

It is worth paying special attention to the design of the Analytical Engine. It was designed to contain about 50,000 components. Input devices were to accept punched cards representing instructions. Storage for 1,000 numbers of 50 decimal digits was to be provided. Babbage borrowed the concept of punched cards from the automatic loom produced by Joseph-Marie Jacquard. This machine uses a sign-and-magnitude representation of decimal numbers. Wheels rotating on shafts represent decimal digits. The "store" and "mill" components of the machine closely relate to the "central memory" and "CPU" of modern computers. Barrels are used to control multiplication and division. Studs on a barrel are screwed appropriately to control each operation. In current terms, the barrel acts like a microprogram store and a column of studs represent a word in the microprogram memory. The machine uses the 10's-complement representation for signed numbers. This convention complicates the operations of addition and subtraction. Nevertheless, it is easy to determine the sign of the result for multiplication and division. Strings of cards are created to represent programs. There are also separate strings of cards to contain the names of variables and their values, respectively. Variables cannot be accessed at run time in the RAM sense, that is by using addresses. This was also true of later electronic designs, such as the ENIAC and Mark I (discussed below). Samuel Morse demonstrated in 1838 the principles of the telegraph. In 1844, he sent a telegraph message from Washington/D.C. to Baltimore in the U.S.A. A transatlantic telegraph cable was used for a few days in 1858. A telegraph cable connected together the east and west coasts of the U.S.A. in 1861. Alexander Graham Bell invented the telephone in 1876. Guglielmo Marconi transmitted a radio signal in 1895. He was also instrumental in a transatlantic wireless signal transmission in 1901. The importance of the latter inventions stems from the ubiquitous presence of the Internet in our days. In 1854, George Boole published a paper that introduced the concept of binary logic as well as an appropriate set of operations. His paper on symbolic and logical reasoning had the title "An Investigation of the Laws of Thought." A variable can be in only one of two states at any time, namely "true" or "false." Electronic computers containing transistors use the binary (that is, Boolean) logic in all of their basic operations. They replace the two states with the binary numbers "0" and "1." It took nearly seven years to process the data collected by the U.S. census of 1880. Herman Hollerith used punched cards to represent the input for the data processing machine of the next census in 1890. Each punch on a card represented a number, and combinations of two punches represented a letter. A single card could represent up to 80 variables. A hole on a card closes an electrical circuit when the card goes through a reader. The number of closed circuits is then counted by the reader. These new census data were processed in only about six weeks. Hollerith founded the Tabulating Machine Company in 1896 to produce the punch card reader. The company was renamed to International Business Machines (IBM) in 1924 after a series of merges with other companies. Remington Rand and Burroughs, among others, also manufactured punch card readers for the business world. Punched cards were used heavily until the 1960s. The English John A. Fleming invented in 1904 the diode vacuum tube that could facilitate the design of electronic computers. In 1906, Lee de Forest introduced in the

U.S.A. a third electrode to control the current flaw in Fleming's diode; he called the new device an audion. In 1911, the Dutch physicist Kamerlingh Onnes discovered superconductivity. Vannevar Bush engineered in 1931 a calculator for solving complex differential equations. However, the complexity of this calculator was very substantial, containing hundreds of gears and shafts for the representation of numbers and their relationships. In 1936, Alan Turing introduced the theoretical concept of the universal computing machine. This imaginary machine serves more like a computer program than computer hardware and can implement any kind of computation in algorithmic form. Since the interpretation of instructions and their implementation are mechanical processes, Turing suggested a simple machine that can implement any given sequence of instructions (that is, a computer program in the current sense). The machine comprises a read/write head that scans data on a one-dimensional tape of infinite size. The tape is divided into squares, where each square contains a symbol or blank. It reads the current symbol from the tape, and based on that symbol and current state it can overwrite the current symbol with another one, can change the current state, and then moves the head left or right on the tape. The American logician Alonzo Church independently reached similar conclusions about computability around the same time. John V. Atanasoff, a professor at Iowa State College, investigated in 1939 the design of an all-electronic computer by using the Boolean logic for representing instructions and data, and performing calculations. Atanasoff extended the Boolean logic to represent 0 and 1 by the "off" and "on" state of an electronic device. He developed in 1942, with the help of the talented graduate student Clifford Berry, the ABC (Atanasoff-Berry Computer) computer. It uses a mechanical clock system, but computations are carried out electronically. It has two rotating drums containing capacitors, which hold the electrical charge for the memory. Data are entered using punched cards. For the first time, vacuum tubes were used in computing. The project cost about $1,000. It introduced the concepts of binary arithmetic in computers, regenerative memory, and logic circuits. Atanasoff was recognized as the father of modern computing when, in a patent infringement case that Sperry Rand brought against Honeywell, a U.S. federal judge voided in 1973 Sperry Rand's patent on the ENIAC (presented in the next Section), saying that it had been derived from Atanasoff's invention. While spending five days at Atanastoff's lab, Mauchly observed the ABC and read its 35-page manual. It was concluded that Mauchly had used this information to construct the ENIAC. The German engineer Konrad Zuse constructed in 1941 the Z3 computer with electromagnetic relays for the design of missiles and airplanes. - - - TO ACCESS ALL THE 16 PAGES OF THIS CHAPTER, Visit: http://www.eolss.net/eolss-sampleallchapter.aspx

Bibliography Bromley A.G. (1998). Charles Babbage's Analytical Engine, 1838. IEEE Annals of the History of Computing, 20(4), 29-45. [A good effort to determine the capabilities of the Analytical Engine. The author discusses the feasibility of the design at its time.] Chase G.C. (1980). History of Mechanical Computing Machinery. IEEE Annals of the History of Computing 2(3). [A good survey of mechanical devices for computing tasks.] De Solla Price D.J. (1959). An Ancient Greek Computer. Scientific American, pp. 60-67. [It contains a good description of the first known sophisticated mechanical computer. The author spent eight years studying the mechanism and was the one who determined its functionality.] Godfrey M.D. (1993). First Draft of a Report on the EDVAC by J.V. Neumann. IEEE Annals of the History of Computing 15(4), 27-75. [This article contains an improved version of the draft written by John von Neumann.] Hill M.D., Jouppi N.P., and Sohi G.S. (Editors) (2000). Readings in Computer Architecture. San Francisco, California, USA: Morgan Kaufmann Publishers. [This book contains a collection of very important readings in the architecture of electronic computers.] Malone M. (1995). The Microprocessor: A Biography. New York, USA: Springer-Verlag. [It contains a good history of microprocessor developments.] Moore G.E. (1965). Cramming More Components Onto Integrated Circuits. Electronics, pp. 114-117. [It describes Moore's Law for the integration of silicon transistors on chips.] Wilkes M.V. (1992). EDSAC 2. IEEE Annals of the History of Computing 14(4) 49-56. [The author describes the EDSAC 2 that was developed under his leadership.] Biographical Sketch Dr. Sotirios G. Ziavras received in 1984 the Diploma in Electrical Engineering from the National Technical University, Athens, Greece. He received in 1985 the M.Sc. in Electrical and Computer Engineering from Ohio University, Athens, Ohio, USA. He was awarded in 1990 the Ph.D. in Computer Science from George Washington University, Washington, D.C., USA, where he was a Distinguished Graduate Teaching Assistant and a Graduate Research Assistant. From 1988 to 1989, he was also with the Center for Automation Research at the University of Maryland, College Park, Maryland, USA. He was a Visiting Assistant Professor in the Electrical and Computer Engineering Department at George Mason University, Fairfax, Virginia, USA, in Spring 1990. He is currently a Professor of Electrical and Computer Engineering at New Jersey Institute of Technology, Newark, New Jersey, USA. His major research interests are processor and computer systems designs, and parallel computing systems and algorithms.