Previous       Table of Contents       Next

IBM 650

In 1959 I joined the Statistical Research Service of the Department of Agriculture (now Agriculture and Agri-Foods Canada) to work on the application of computers in statistics. As the Department did not have a computer for research purposes, we used the IBM 650 computer either at the University of Ottawa or at the IBM office in downtown Ottawa. We usually put the punched cards with the programs and data into one or two metal carrying cases and drove to either of the two computer centres. Most of the programming was done in FORTRANSIT, a simple subset of the then current version of Fortran.

The IBM 650 was contained in a cabinet weighing about 5600 pounds and requiring about 45 square feet of floor space. The internal number system was binary-coded decimal with floating- and fixed-point arithmetic operations. The instruction type was one-plus-one address giving the addresses of the operand and the next instruction. Addition time was 0.7 to 0.8 milliseconds; multiplication time was from 2 to 20 milliseconds; and division time was from 6 to 23 milliseconds. Primary storage was a 1000- or 2000-word magnetic drum and a 60-word magnetic core. Optional storage consisted of a RAMAC disc or magnetic tape. Basic input and output was punched cards and line printer. The 650 was rented rather than sold at a monthly rental price for the basic system starting at $3250.

Although programs could be written in either machine language or in assembly language using the Symbolic Optimal Assembly Program (SOAP), all of the programs which my colleagues and I wrote were in FORTRANSIT. FORTRANSIT was named after Fortran, of course, and the IT (Internal Translator) language developed specifically for the 650 and taking advantage of its hardware characteristics. FORTRANSIT programs required a three-stage compilation before they could be executed: from FORTRANSIT to IT to SOAP to machine language with a card deck being produced at each stage which then had to be read during the next stage. Compilation was a slow and tedious process, and I can recall one simple analysis-of-variance program requiring one and a half hours to compile. To shorten debugging time we learned how to correct minor errors at the SOAP stage by repunching the appropriate cards and recompiling from SOAP to machine language.

Programs were punched on Fortran cards like the one shown here. Once very common, they are very scarce now. A Fortran statement was punched in columns 7 to 72 of one or more cards with cards other than the first having the numbers "1", "2", ... punched in column 6. Statement numbers were punched in columns 2 to 5, while a "C" in column 1 indicated a comment card which was ignored during compilation except that it appeared on a listing of the source program. Columns 73 to 80 were for card identification, and if used were ignored during compilation.

The FORTRANSIT program for the sample problem is shown here.

          N = 0
	  SUM = 0.0
	  PMAX = 0.0
	1 READ, PRICE
	  IF (PRICE) 3, 3, 2
	2 N = N + 1
	  SUM = SUM + PRICE
	  IF (PMAX - PRICE) 4, 1, 1
	4 PMAX = PRICE
	  GO TO 1
	3 PUNCH, N, SUM, PMAX
	  END
IBM 650 FORTRANSIT
We might note the arithmetic IF statement of the form "IF (exp) L1,L2,L3" which provided transfer of control to the statements labelled L1, L2 or L3 according as the value of the expression "exp" was negative, zero or positive, respectively. Conversion by hand of FORTRANSIT programs to later versions of Fortran required amongst other things converting all of the arithmetic IF statements to logical IF statements. I can remember thinking what a backward step it was to remove the arithmetic IF from Fortran!

The IT system was the predecessor of several other improved compiling systems, one of which was called RUNCIBLE. I can recall hearing of "RUNCIBLE IT" and being reminded that the first name was from the "runcible spoon" in Edward Lear's "The Owl and the Pussycat":

They dined on mince and slices of quince,
     Which they ate with a runcible spoon;
And hand in hand, on the edge of the sand,
     They danced by the light of the moon,
        The moon,
        The moon,
     They danced by the light of the moon.

An IBM 650 in one of the IBM offices in New York State had a sign similar to the following, copies of which appeared on many computers including one I saw although I can't remember where:

                Achtung! Alles Lookenspeepers!
Das computermachine ist nicht fur gefingerpoken und mittengrabben.
Ist easy schnappen der springenwerk, blowenfusen, und poppencorken mit spitzensparken.
Ist nicht fur gewerken bei das dumpkopfen.
Das rubbernecken sichtseeren keepen hans in das pockets muss.
Relaxen und watch das blinkenlichten.

A Web search for "ibm 650" gave over 2650 hits with one of the first at Columbia University appearing to be a good place to start looking for further information.


Previous       Table of Contents       Next