A Collection of Punched Cards for Computer Programs

A section of the Punched Card Collection

IBM Calculator Instruction Card

 [photo]

This card is apparently designed for the IBM 701 computer; this was the very first general purpose digital computer sold by IBM. It used vacuum tube technology, including Williams tubes for main memory (a type of DRAM). This card has fields for both the symbolic and executable forms of the instruction; apparently, the assembler was designed to punch the object code directly onto the cards from which it read the source code! A high resolution scan is available.

IBM Binary Card

 [photo]

This card is a row-binary card for the IBM 701 computer. This machine had a 36 bit word, with two 18-bit instructions packed per word. Because the card readers for these machines read cards one row at a time, delivering the results as two words of data holding 72 bits of data, the binary format used for storing memory images from these machines on cards stored data in the same format. It is noteworthy that the machine could only read 72 of the 80 columns of data on the card, but that the particular 72 columns were determined by a plugboard! This card is clearly designed for use with a plugboard that ignores columns 1 to 8. A high resolution scan is available.

IPL V Symbolic Card

 [photo]

This card, from Carnegie Tech, is formatted for IPL V, one of a series of early list processing languages developed there. This language was important in the early development of the field of artificial intelligence, but it was completely supplanted by LISP. As a language, IPL V had many features reminiscent of assembly language, with fixed format constraints that are evident on this card. A high resolution scan is available.

GE 600 Self Interpreting Card

 [photo]

This card, probably designed in October 1965 (judging by the notation "10-65" printed on the left edge), was printed for use with the GE 600 series computers at Bell Labs. These included a GE 635 at the Whippany lab and two GE 645 systems at Murray Hill, one in the computer center, and one used for the Multics project, a joint venture between Bell Labs, MIT and GE. All but the latter ran GECOS (the General Electric Computer Operating System).

This card is formatted for the GE 600 assembly language, and it has the nice feature that columns 50 to 72 are printed with complete documentation of the GE 600 6-bit BCD character set, as it was punched on cards.

A Generic FORTRAN card

 [photo]

This card is printed with all of the fields that matter to the FORTRAN programming language. The card was printed by IBM New Zealand, evidence of the global penetration of computers in the punched card era.

A Hewlett Packard Educational BASIC card

 [photo]

This card was not intended to be punched, although nothing prevented that use. Instead, the card is designed to be marked with a number 2 soft lead pencil, and then read on an optical mark reader (possibly made for HP by Chatsworth). In the early 1970's, Hewlett Packard was a leader in providing computers to public school systems interested in teaching computer programming. While Hewlett Packard emphasized use of timesharing systems, the provisions they made for batch operation using optical mark readers lowered the price per student to something that many public school systems could afford.

The black index marks along the bottom indicate the columns of the card to the reader, and the statement type was coded using a special 1 out of 22 code. The standard optical mark reader format for use on punched card stock allowed only 40 columns, but this HP format sacrifices one column in the statement field and two more in the comment field.

With conventional punched-cards, programmers spoke of punching their programs onto cards using a keypunch. Users of mark-sense cards have come up with interesting terminology to describe the analogous act of programming on such cards. One of the more interesting descriptive phrases is "we bubbled in our programs on cards", referring to filling the oval bubbles that are commonly used as marking targets on mark-sense forms. I first heard this usage in 2002 from Dr. Glen B. Cook.