The IBM 604 Electronic Calculating Punch was the world's first mass produced electronic calculator along with its predecessor the IBM 603. It was an electronic unit record machine that could perform multiple calculations, including division. It was invented and developed by Ralph Palmer, Jerrier Haddad and Byron Phelps. It was introduced by IBM in 1948.
It could read a punched card from a deck, do some calculations based on the wiring of its plugboard, and punch results onto the same card. A separate IBM 521 Card Read/Punch processed the cards and had its own plugboard which selected the columns to be read and those to be punched.
The 604 and a modified version, the 605, were used as components of the Card Programmed Electronic Calculators (CPC and CPC II). The 604 was also a component of the Test Assembly, a precursor to IBM's early computers. The circuit module design and packaging was also used for the IBM 650, the world's first mass produced computer and a very popular computer during the 1960s.
An all-transistor version of the 604 was built and demonstrated in October 1954. Although it used about 2000 transistors as opposed to 1250 tubes in the original, it occupied only half the volume, and used only 5% as much power. This was only an experimental machine, but its technology was used to build the IBM 608, which shipped in December 1957, and was the world's first all-transistorized electronic calculator to be mass produced.
Most of the circuitry was based on modifications of circuit designs used in the earlier 603 Electronic Multiplier and was packaged in small replaceable pluggable units, each typically containing one miniature vacuum tube. A limited number of standardized circuit designs were used, which made the product more easily manufactured and serviced. The calculation unit contained 1,250 tubes. Clock speed was increased from the 603's rate of 35kHz to 50 kHz. The 604 performed fixed point addition, subtraction, multiplication and division using BCD arithmetic.
Initial versions supported 40 program steps, and this was soon expanded to 60. Processing was still locked to the reader/punch cycle time, thus program execution had to complete within the time between a punched card leaving the read station and entering the punch station.
Considerable expectations for the future of the business rested on the 604, upon which a corresponding amount of planning talent had been invested. While initially IBM planned on selling 75 units, they eventually sold over 5600. In 1974, there were still over 400 IBM 604s still in use.
- IBM 603 The First Commercial Electronic Calculator IBM History, accessed September 21, 2020]
- Electronic Calculator- US Patent US2658681A, filed 1948, issued 1953. Ralph L Palmer, James E Fernekees, Jerrier A Haddad, Byron E Phelps, Jr James V Williams
- Dawes, Helen1 (1984). 14K Days. A history of the Poughkeepsie Lab. http://archive.computerhistory.org/resources/access/text/2017/11/102655529-05-01-acc.pdf: IBM. p. 5.CS1 maint: location (link)
- IBM Archive: 1948
- Research, United States Office of Naval (1953). A survey of automatic digital computers. Office of Naval Research, Dept. of the Navy. p. 47.
- IBM 604 Electronic Calculating Punch Manual of Operation 1948, 1954, International Business Machines Corporation, Form 22-5279-10
- "FORUM: All-Transistor Computer" (PDF). Computers and Automation. 3 (9): 28–29. Nov 1954. Retrieved 2020-09-05.
- Pugh, Emerson W.; Johnson, Lyle R.; Palmer, John H. (1991). IBM's 360 and Early 370 Systems. MIT Press. pp. 34. ISBN 9780262161237.
ibm 604 1954 ibm 608 1957.
- Pluggable Support for Electron Tube and Circuit US patent 2637763, filed July 9, 1948, issued May 5, 1953, Ralph L. Palmer
- Weik, Martin H. (March 1961). A Third Survey of Domestic Electronic Digital Computing Systems: IBM 604 Section. Ballistic Research Laboratories (BRL). Report No. 1115. Contains about 4 pages of IBM 604 survey detail: applications, customers, specifications, and costs.
- IBM 604 Electronic Calculating Punch -- notes, manuals
- IBM (1954). IBM 604 Electronic Calculating Punch: Manual of Operation, IBM Form 22-5279-10 (PDF).
- IBM (1958). IBM Customer Engineering Manual of Instruction: 604 Electronic Calculating Punch, IBM Form 227-7609-0 (PDF).