Computer Science

Computing History Displays: First Floor - Punched Card Data Processing

Our IBM 1620 computer, like most computers in the 1950s and 1960s, used punched cards for input and output. However, unlike the 1620, which had the primary purpose of calculation, most computers performed accounting tasks based on the techniques of punched card data processing that were developed in the first half of the 20th century, well before the first electronic computers appeared.

Data Processing Machines

Data bases were decks of cards that were stored permanently in cabinets. The processing of the data on the cards, before computers came on the scene, was performed using a range of special machines.

Click the thumbnail to see the original image.
The key punch

By using a key punch, data could be represented by holes punched on cards. Each character was encoded by up to 3 holes punched in one of the 80 columns on the card. Each hole was punched in one of 12 rows - only a few of the possible codes were made use of. The IBM 026 was the most-widely used punch - the IBM 526 on display is an extended version. The 026 printed the characters on the top of cards as they were punched. A simpler manual non-printing card punch is also on display.

Click the thumbnail to see the original image.
The sorter

The sorter was used to arrange a deck in numerical order based on what was punched in a range of columns. The IBM 082 on display is that used by our computer centre for many years. The sorter could place each card into one of 12 hoppers based on the punch in a particular column. The cards were sorted based on the digit punched in one column at the most significant end of numbers, gathered back together into a deck, then sorted on the next less significant column and so forth, performing what is called a "radix sort". It was also possible to sort cards alphabetically but this meant that each column had to be sorted twice because there were two punch holes in each card column.

Click the thumbnail to see the original image.
The tabulator

This would read decks of cards and print selected portions of their contents, also adding up columns of numbers and printing totals. Tabulators were complex machines that were controlled by plug-boards and corresponded most closely to what we regard as the computer today. Most Universities had tabulators that were used for processing student records held on punched cards.

Click the thumbnail to see the original image.
The collator

Collators allowed cards to be selected from one deck under control of another deck. They thus performed functions that are today done using data base systems.

Other machines

There were "interpreters" that printed on the top line of cards the values that were punched on them. There were "gang punches" that could copy decks of cards. There were "verifiers" that could be used to check that cards had been punched correctly.

The first data processing computers replaced the tabulator but retained the other pieces of equipment. Gradually, the computer, being programmable, took over the function of other machines, for example, sorting and collating were done by programs. The use of cards for storing permanent records was replaced by tape and disk-pack and the old techniques of data processing, that lasted well into the 1980s, were gradually replaced by the techniques of on-line data bases that are used today.

Punched cards

Punched cards were first used to control weaving machines, the Jacquard looms, where the pattern to be made was represented as holes in card that controlled the lifting of the yarn. For holding more general data the concept was adapted by Charles Babbage for his analytical engine. The first significant use of cards to hold data was a line of equipment developed by Herman Hollerith for processing the US census in the 1890s. The use of punch cards grew from this base and gradually evolved, with the shepherding of IBM and other companies, to the standard 80-column card in the 1930s. These cards continued to be the only practical low-cost machine-readable way of physically moving small amounts of data until they were replaced by floppy disks in the 1980s.

Cards were used to store many varieties of data. Because they were a standard size they were also used in other ways than merely containing data punched in holes. Some examples on display here are:

  • Computer Program cards. Programs were prepared as decks of cards - one line per card.
  • Data cards. When using a standard program, data cards were often printed with visual information explaining the fields of data.
  • Stock control. Pre-printed cards were gathered to keep track of items as they were sold.
  • Mark-sensed cards. It was possible to represent data on cards with pencil marks on mark-sense cards (graphite conducts electricity and can be sensed.) Many alumni remember the attempt by our computer centre to cut operator costs by requiring programs to be written on marked sense cards. The students would queue up to feed their cards into the computer, one by one, using a special card reader. One error in reading or marking a card and the work was wasted!
  • "Portapunch" cards. In the 1970s computers were still expensive and restricted to central sites. To offer the experience of computing to secondary school students, Neil James at the University of Otago developed the Portran system that allowed programs to be written using pre-punched cards in which the student would remove chads using a paper-clip! Although cumbersome, this was a very useful system. Arrangement was made with Databank (the NZ Bank Data Processors) to pick up Portran decks, process them overnight, and return the printed output the next day. This was a very significant service for increasing knowledge of computers in NZ.
  • 96-column cards. Decks of 80-column cards were heavy and cumbersome. A last gasp for the technology was the brief development of a 96-column card associated with the IBM System/3 computer in the 1960s.
  • Read-only-memory cards. The IBM System/360 model 30 had a read-only memory that used cards that had the "chads" printed as metal on plastic. In this memory any stored values that were "0" were punched out using a card punch.
Plug Board Programming

Punched card machines were each designed with a specific task in mind. They all followed a built-in sequence - read the next card, take some action based on that card, read the next card etc. Electrical signals were routed to mechanical components to cause the actions following from each card. Although the sequence was fixed, the actions taken could be varied by wiring a "plug-board" that routed these electrical signals to different parts of the machine.

Wiring plug boards was thus a very early form of programming. Wiring up the plug boards was a very skillful job that required a detailed knowledge of how the machine worked, perhaps analogous with microprogramming of today's computers. There were many tens of thousands of punched card tabulators and other machines that were used up until the 1970s. To ease the transition from such machines to computers, special programming languages, such as RPG3 (Report Program Generator) were invented for computers so that they could be programmed in a way familiar to the plug-board programmers.

Plug board programmers would design their programs on coding sheets like in these examples. Some of the plug boards used to control the IBM 526 card punch are on display.

Click the thumbnail to see the original image.
The Punched Card World

Here are some advertisements from the 1950s showing aspects of the world of punched card data processing, now completely replaced by modern computing.

Click the thumbnail to see the original image.
Click the thumbnail to see the original image.
Click the thumbnail to see the original image.
Click the thumbnail to see the original image.

Apply now!


Postgraduate study options

Computer Science Blog

Please give us your feedback or ask us a question

This message is...

My feedback or question is...

My email address is...

(Only if you need a reply)

A to Z Directory | Site map | Accessibility | Copyright | Privacy | Disclaimer | Feedback on this page