Chapter 4 of 20 · 3968 words · ~20 min read

Part 4

Hollerith, a statistician living in Buffalo, New York, may or may not have heard the old saw about statistics being able to support anything—including the statisticians, but there was a challenge in the rapid growth of population that appealed to the inventor in him and he set to work. He came up with a card punched with coded holes, a card much like that used by Jacquard on his looms, and by Babbage on the dream computer that became a nightmare. But Hollerith did not meet the fate of his predecessors. Not stoned, or doomed to die a failure, Hollerith built his card machines and contracted with the government to do the census work. “It was a good paying business,” he said. It was indeed, and his early census cards would some day be known generically as “IBM cards.”

While Jacquard and Babbage of necessity used mechanical devices with their punched cards, Hollerith added the magic of electricity to his card machine, building in essence the first electrical computing machine. The punched cards were floated across a pool of mercury, and telescoping pins in the reading head dropped through the holes. As they contacted the mercury, an electrical circuit was made and another American counted. Hollerith did not stop with census work. Sagely he felt there must be commercial applications for his machines and sold two of the leading railroads on a punched-card accounting system. His firm merged with others to become the Computing-Tabulating-Recording Company, and finally International Business Machines. The term “Hollerith Coding” is still familiar today.

[Illustration:

_International Business Machines Corp._

Hollerith tabulating machine of 1890, forerunner of modern computers. ]

Edison was illuminating the world and the same electrical power was brightening the future of computing machines. As early as 1915 the Ford Instrument Company was producing in quantity a device known as “Range Keeper Mark I,” thought to be the first electrical-analog computer. In 1920, General Electric built a “short-circuit calculating board” that was an analog or model of the real circuits being tested. Westinghouse came up with an “alternating-current network analyzer” in 1933, and this analog computer was found to be a powerful tool for mathematics.

[Illustration:

_International Business Machines Corp._

A vertical punched-card sorter used in 1908. ]

While scientists were putting the machines to work, writers continued to prophesy doom when the mechanical man took over. Mary W. Shelley’s _Frankenstein_ created a monster from a human body; a monster that in time would take his master’s name and father a long horrid line of other fictional monsters. Ambrose G. Bierce wrote of a diabolical chess-playing machine that was human enough to throttle the man who beat him at a game. But it remained for the Czech playwright Karel Čapek to give the world the name that has stuck to the mechanical man. In Čapek’s 1921 play, _R.U.R._, for Rossum’s Universal Robots, we are introduced to humanlike workers grown in vats of synthetic protoplasm. _Robota_ is a Czech word meaning compulsory service, and apparently these mechanical slaves did not take to servitude, turning on their masters and killing them. Robot is generally accepted now to mean a mobile thinking machine capable of action. Before the advent of the high-speed electronic computer it had little likelihood of stepping out of the pages of a novel or movie script.

As early as 1885, Allan Marquand had proposed an electrical logic machine as an improvement over his simple mechanically operated model, but it was 1936 before such a device was actually built. In that year Benjamin Burack, a member of Chicago’s Roosevelt College psychology department, built and demonstrated his “Electrical Logic Machine.” Able to test all syllogisms, the Burack machine was unique in another respect. It was the first of the portable electrical computers.

The compatibility of symbolic logic and electrical network theory was becoming evident at about this time. The idea that yes-no corresponded to on-off was beautifully simple, and in 1938 there appeared in one of the learned journals what may fairly be called a historic paper. Appearing in _Transactions of the American Institute of Electrical Engineers_, “A Symbolic Analysis of Relay and Switching Circuits,” was written by Claude Shannon and was based on his thesis for the M.S. degree at the Massachusetts Institute of Technology a year earlier. One of its important implications was that the programming of a computer was more a logical than an arithmetical operation. Shannon had laid the groundwork for logical computer design; his work made it possible to teach the machine not only to add but also to think. Another monumental piece of work by Shannon was that on information theory, which revolutionized the science of communications. The author is now on the staff of the electronics research laboratory at M.I.T.

Two enterprising Harvard undergraduates put Shannon’s ideas to work on their problems in the symbolic logic class they were taking. Called a Kalin-Burkhart machine for its builders, this electrical logic machine did indeed work, solving the students’ homework assignments and saving them much tedious paperwork. Interestingly, when certain logical questions were posed for the machine, its circuits went into oscillation, making “a hell of a racket” in its frustration. The builders called this an example of “Russell’s paradox.” A typical logical paradox is that of the barber who shaved all men who didn’t shave themselves—who shaves the barber? Or of the condemned man permitted to make a last statement. If the statement is true, he will be beheaded; if false, he will hang. The man says, “I shall be hanged,” and thus confounds his executioners as well as logic, since if he is hanged, the statement is indeed true, and he should have been beheaded. If he is beheaded, the statement is false, and he should have been hanged instead.

World War II, with its pressingly complex technological problems, spurred computer work mightily. Men like Vannevar Bush, then at Harvard, produced analog computers called “differential analyzers” which were useful in solving mathematics involved in design of aircraft and in ballistics problems.

A computer built by General Electric for the gunsights on the World War II B-29 bomber is typical of applications of analog devices for computing and predicting, and is also an example of early airborne use of computing devices. Most computers, however, were sizable affairs. One early General Electric analog machine, described as a hundred feet long, indicates the trend toward the “giant brain” concept.

Even with the sophistication attained, these computers were hardly more than extensions of mechanical forerunners. In other words, gears and cams properly proportioned and actuated gave the proper answers whether they were turned by a manual crank or an electrical motor. The digital computer, which had somehow been lost in the shuffle of interest in computers, was now appearing on the scientific horizon, however, and in this machine would flower all the gains in computers from the abacus to electrical logic machines.

_The Modern Computer_

Many men worked on the digital concept. Aiken, who built the electromechanical Mark I at Harvard, and Williams in England are representative. But two scientists at the University of Pennsylvania get the credit for the world’s first electronic digital computer, ENIAC, a 30-ton, 150-kilowatt machine using vacuum tubes and semiconductor diodes and handling discrete numbers instead of continuous values as in the analog machine. The modern computer dates from ENIAC, Electronic Numerical Integrator And Computer.

[Illustration:

_Remington Rand UNIVAC_

ENIAC in operation. This was the first electronic digital computer. ]

Shannon’s work and the thinking of others in the field indicated the power of the digital, yes-no, approach. A single switch can only be on or off, but many such switches properly interconnected can do amazing things. At first these switches were electromechanical; in the Eckert-Mauchly ENIAC, completed for the government in 1946, vacuum tubes in the Eccles-Jordan “flip-flop” circuit married electronics and the computer. The progeny have been many, and their generations faster than those of man. ENIAC has been followed by BINAC and MANIAC, and even JOHNNIAC. UNIVAC and RECOMP and STRETCH and LARC and a whole host of other machines have been produced. At the start of 1962 there were some 6,000 electronic digital computers in service; by year’s end there will be 8,000. The golden age of the computer may be here, but as we have seen, it did not come overnight. The revolution has been slow, gathering early momentum with the golden wheels of Homer’s mechanical information-seeking vehicles that brought the word from the gods. Where it goes from here depends on us, and maybe on the computer itself.

------------------------------------------------------------------------

“_Theory is the guide to practice, and practice is the ratification and life of theory._”

—John Weiss

3: How Computers Work

In the past decade or so, an amazing and confusing number of computing machines have developed. To those of us unfamiliar with the beast, many of them do not look at all like what we imagined computers to be; others are even more awesome than the wildest science-fiction writer could dream up. On the more complex, lights flash, tape reels spin dizzily, and printers clatter at mile-a-minute speeds. We are aware, or perhaps just take on faith, that the electronic marvel is doing its sums at so many thousand or million per second, cranking out mathematical proofs and processing data at a rate to make mere man seem like the dullest slowpoke. Just how computers do this is pretty much of a mystery unless we are of the breed that works with them. Actually, in spite of all the blurring speed and seeming magic, the basic steps of computer operation are quite simple and generally the same for all types of machines from the modestly priced electromechanical do-it-yourself model to STRETCH, MUSE, and other ten-million-dollar computers.

It might be well before we go farther to learn a few words in the lexicon of the computer, words that are becoming more and more a part of our everyday language. The following glossary is of course neither complete nor technical but it will be helpful in following through the mechanics of computer operation.

COMPUTER DICTIONARY

ACCESS TIME—Time required for computer to locate data and transfer it from one computer element to another.

ADDER—Device for forming sums in the computer.

ADDRESS—Specific location of information in computer memory.

ANALOG COMPUTER—A physical or electrical simulator which produces an analogy of the mathematical problem to be solved.

ARITHMETIC UNIT—Unit that performs arithmetical and logical operations.

BINARY CODE—Representation of numbers or other information using only one and zero, to take advantage of open and closed circuits.

BIT—A binary digit, either one or zero; used to make binary numbers.

BLOCK—Group of words handled as a unit, particularly with reference to input and output.

BUFFER—Storage device to compensate for difference in input and operation rate.

CONTROL UNIT—Portion of the computer that controls arithmetic and logical operations and transfer of information.

DELAY LINE—Memory device to store and later reinsert information; uses physical, mechanical, or electrical techniques.

DIGITAL COMPUTER—A computer that uses discrete numbers to represent information.

FLIP-FLOP—A circuit or device which remains in either of two states until the application of a signal.

GATE—A circuit with more than one input, and an output dependent on these inputs. An AND gate’s output is energized only when all inputs are energized. An OR gate’s output is energized when one or more inputs are energized. There are also NOT-AND gates, EXCLUSIVE-OR gates, etc.

LOGICAL OPERATION—A nonarithmetical operation, i.e., decision-making, data-sorting, searching, etc.

MAGNETIC DRUM—Rotating cylinder storage device for memory unit; stores data in coded form.

MATRIX—Circuitry for transformation of digital codes from one type to another; uses wires, diodes, relays, etc.

MEMORY UNIT—That part of the computer that stores information in machine language, using electrical or magnetic techniques.

MICROSECOND—One millionth of a second.

MILLISECOND—One thousandth of a second.

NANOSECOND—One billionth of a second.

PARALLEL OPERATION—Digital computer operation in which all digits are handled simultaneously.

PROGRAMMING—Steps to be executed by computer to solve problem.

RANDOM ACCESS—A memory system that permits more nearly equal access time to all memory locations than does a nonrandom system. Magnetic core memory is a random type, compared with a tape reel memory.

REAL TIME—Computer operation simultaneous with input of information; e.g., control of a guided missile or of an assembly line.

REGISTER—Storage device for small amount of information while, or until, it is needed.

SERIAL OPERATION—Digital computer operation in which all digits are handled serially.

STORAGE—Use of drums, tapes, cards, and so on to store data outside the computer proper.

_The Computer’s Parts_

Looking at computers from a distance, we are vaguely aware that they are given problems in the form of coded instructions and that through some electronic metamorphosis this problem turns into an answer that is produced at the readout end of the machine. There is an engineering technique called the “black box” concept, in which we are concerned only with input to this box and its output. We could extend this concept to “black-magic box” and apply it to the computer, but breaking the system down into its components is quite simple and much more informative.

There are five components that make up a computer: input, control, arithmetic (or logic) unit, memory, and output. As machine intelligence expert, Dr. W. Ross Ashby, points out, we can get no more out of a brain—mechanical or human—than we put into it. So we must have an input. The kind of input depends largely on the degree of sophistication of the machine we are considering.

With the abacus we set in the problem mechanically, with our fingers. Using a desk calculator we punch buttons: a more refined mechanical input. Punched cards or perforated tapes are much used input methods. As computers evolve rapidly, some of them can “read” for themselves and the input is visual. There are also computers that understand verbal commands.

Input should not be confused with the control portion of the computer’s anatomy. We feed in data, but we must also tell the computer what to do with the information. Shall it count the number of cards that fly through it, or shall it add the numbers shown on the cards, record the maximum and minimum, and print out an average? Control involves programming, a computer term that was among the first to be assimilated into ordinary language.

The arithmetic unit—that part of the computer that the pioneer Babbage called his “mill”—is the nuts and bolts end of the business. Here are the gears and shafts, the electromechanical relays, or the vacuum tubes, transistors, and magnetic cores that do the addition, multiplication, and other mathematical operations. Sometimes this is called the “logic” unit, since often it manipulates the ANDS, ORS, NORS, and other conjunctives in the logical algebra of Boole and his followers.

The memory unit is just that; a place where numbers, words, or other data are stored and ready to be called into use whenever needed. There are two broad types of memory, internal and external, and they parallel the kind of memory we use ourselves. While our brain can store many, many facts, it does have a practical limit. This is why we have phone books, logarithm tables, strings around fingers, and so on. The computer likewise has its external memory that may store thousands of times the capacity of its internal memory. Babbage’s machine could remember a thousand fifty-digit numbers; today’s large computers call on millions of bits of data.

[Illustration:

Conversion of problem to machine program. ]

After we have dumped in the data and told the computer what to do with them, and the arithmetic and memory have collaborated, it remains only for the computer to display the result. This is the output of the computer, and it can take many forms. If we are using a simple analog computer such as a slide rule, the answer is found under the hairline on the slide. An electronic computer in a bank prints out the results of the day’s transactions in neat type at hundreds of lines a minute. The SAGE defense computer system displays an invading bomber and plots the correct course for interceptors on a scope; a computer in a playful mood might type out its next move—King to Q7 and checkmate.

With this sketchy over-all description to get us started, let us study each unit in a little more detail. It is interesting to compare these operations with those of our human computer, our brain, as we go along.

[Illustration:

_Remington Rand UNIVAC_

A large computer, showing the different parts required. ]

_Input_

An early and still very popular method of getting data into the computer is the punched card. Jacquard’s clever way of weaving a pattern got into the computer business through Hollerith’s census counting machines. Today the ubiquitous IBM card can do these tasks of nose counting and weaving, and just about everything else in between. Jacquard used the punched holes to permit certain pins to slide through. Hollerith substituted the mercury electrical contact for the loom’s flying needles. Today there are many other ways of “reading” the cards. Metal base plate and springs, star wheels, even photoelectric cells are used to detect the presence or absence of the coded holes. A human who knows the code can visually extract the information; a blind man could do it by the touch system. So with the computer, there are many ways of transferring data.

[Illustration:

_Remington Rand_ UNIVAC

The Computer’s Basic Parts. ]

An obvious requirement of the punched card is that someone has to punch the holes in the first place. This is done with manually operated punches, power punches, and even automatic machines that handle more than a hundred cards a minute. Punched cards, which fall into the category called computer “software,” are cheap, flexible, and compatible with many types of equipment.

Particularly with mathematical computations and scientific research, another type of input has become popular, that of paper tape. This in effect strings many cards together and puts them on an easily handled roll. Thus a long series of data can be punched without changing cards, and is conveniently stored for repeated use. Remember the old player-piano rolls of music? These actually formed the input for one kind of computer, a musical machine that converted coded holes to musical sounds by means of pneumatic techniques. Later in this chapter we will discuss some modern pneumatic computers.

More efficient than paper is magnetic tape, the same kind we use in our home recording instruments. Anyone familiar with a tape recorder knows how easy it is to edit or change something on a tape reel. This is a big advantage over punched cards or paper tapes which are physically altered by the data stored on them and cannot be corrected. Besides this, magnetic tape can hold many more “bits” of information than paper and also lends itself to very rapid movement through the reading head of the computer. For example, standard computer tape holds seven tracks, each with hundreds of bits of information per inch. Since there are thousands of feet on a ten-inch reel, it is theoretically possible to pack 40 _million_ bits on this handful of tape!

Since the computer usually can operate at a much higher rate of speed than we can put information onto tape, it is often the practice to have a “buffer” in the input section. This receiving station collects and stores information until it is full, then feeds it to the computer which gobbles it up with lightning speed. Keeping a fast computer continuously busy may require many different inputs.

Never satisfied, computer designers pondered the problem of all the lost time entailed in laboriously preparing cards or tapes for the ravenous electronic machine. The results of this brain-searching are interesting, and they are evident in computers that actually read man-talk. Computers used in the post office and elsewhere can optically read addresses as well as stamps; banks have computers that electrically read the coded magnetic ink numbers on our checks and process thousands of times as many as human workers once did. This optical reading input is not without its problems, of course. Many computers require a special type face to be used, and the post office found that its stamp recognizer was mistaking Christmas seals for foreign stamps. Improved read heads now can read hand-printed material and will one day master our widely differing human scrawls. This is of course a boon to the “programmer” of lengthy equations who now has to translate the whole problem into machine talk before the machine can accept it.

If a machine can read, why can’t it understand verbal input as well? Lazy computer engineers have pushed this idea, and the simplest input system of all is well on the way to success. Computers today can recognize numbers and a few words, and the Japanese have a typewriter that prints out the words spoken to it! These linguistic advances that electronic computers are making are great for everyone, except perhaps the glamorized programmer, a new breed of mathematical logician whose services have been demanded in the last few years.

[Illustration:

Magnetic Tape - Paper Tape - IBM Card - Magnetic Ink Characters ]

_Control_

Before we feed the problem into the machine, or before we give it some “raw” data to process, we had better tell our computer what we want it to do. All the fantastic speed of our electrons will result in a meaningless merry-go-round, or perhaps a glorious machine-stalling short circuit unless the proper switches open and close at the right time. This is the job of the control unit of the computer, a unit that understands commands like “start,” “add,” “subtract,” “find the square root,” “file in Bin B,” “stop,” and so on. The key to all the computer’s parts working together in electronic harmony is its “clock.” This timekeeper in effect snaps its fingers in perfect cadence, and the switches jump at its bidding. Since the finger-snapping takes place at rates of millions of snaps a second, the programmer must be sure he has instructed the computer properly.

The ideal programmer is a rare type with a peculiarly keen brain that sometimes takes seemingly illogical steps to be logical. Programmers are likely to be men—or women, for there is no sex barrier in this new profession—who revel in symbolic logic and heuristic or “hunch” reasoning. Without a program, the computer is an impressively elaborate and frighteningly expensive contraption which cannot tell one number from another. The day may come when the mathematician can say to the machine, “Prove Fermat’s last theorem for me, please,” or the engineer simply wish aloud for a ceramic material that melts at 15,000° C. and weighs slightly less than Styrofoam. Even then the human programmer will not start drawing unemployment insurance, of course. If he is not receiving his Social Security pension by then he will simply shift to more creative work such as thinking up more problems for the machine to solve.

Just as there are many jobs for the computer, so there are many kinds of programs. On a very simple, special-purpose computer, the program may be “wired-in,” or fixed, so that the computer can do that particular job and no other. On a more flexible machine, the program may still be quite simple, perhaps no more than a card entered in a desk unit by an airline ticket agent to let the computer arrange a reservation for three tourist seats on American Airlines jet flight from Phoenix to Chicago at 8:20 A.M. four days from now. On a general-purpose machine, capable of many problems, the program may be unique, a one-of-a-kind highly complex set of instructions that will make the computer tax its huge memory and do all sorts of mental “nip-ups” before it reaches a solution.