Published on Jun. 1, 2006
Last updated on Jul. 8, 2023
The FACOM 128A, which was completed in 1956, was the first domestically produced relaybased business computer. Developed by Fuji Tsushinki Seizo, the first machine was delivered to the Ministry of Education’s Institute of Statistical Mathematics in September 1956.
The 128A was based on experiences with the FACOM 100, but the circuit behavior and the calculation methods were redesigned from the ground up, giving the new computer two to five times the calculation speed of the FACOM 100 and much more memory capacity. The upgraded FACOM 128B was completed in May 1958 based on the usage experiences of the 128A. A FACOM 128B machine is on display at Ikeda Memorial Room at Fujitsu Numazu Complex. It is thought to be one of the world's oldest computers still in working condition.
 1.FACOM 128A
 The FACOM 128A was initially called the FACOM 128, but this was later changed to the FACOM 128A. The basic feature set that would later be incorporated in the FACOM 128B was already present in the FACOM 128A. The following describes the characteristics of the FACOM 128A.
 （1）Hardware overview

 Asynchronous control circuitry At the time, when circuit complexity was much lower than today, this circuit put an emphasis on processing speed.
 Memory units The 128A used a crossbar switch, which was just beginning to be used in telephone switchboards at the time. The generalpurpose memory space for calculations was 180 words. One word consisted of 69 bits, which included a redundant section for selfchecks. Besides the generalpurpose memory space, there was tape memory, print memory, special memory, and other memory spaces. For example, the tape memory, which consisted of four words, was used as a memory space for sequential processing, as each word represented a papertape punch and reader pair.
 Nonstored programs Programs were supplied to the computer via paper tape or paper cards (Fuji Cards).
 Index registers On the FACOM 128A, a memory space equivalent to three registers was assigned to what was called the address modification unit.
 Selfcheck function and auto reexecution function The 128A was equipped with a selfcheck function for calculation results and an auto reexecution function to ensure the reliability of calculations.
 （2）Numeric codes and numeric precision

 Decimal calculations and biquinary codes Calculations were done in decimal form to take advantage of the computer’s capabilities, but numbers were expressed as biquinary coded decimals, consisting of seven bits to make use of the selfcheck ability.
 Floatingpoint representation with eight significant digits to the ±19th power One number (one word) was represented as a signed decimal with eight significant digits to the ±19th power (this representation was called moving decimal point at the time). Thus, one number (one word) consisted of 69 bits, which included a redundancy section for selfchecks.
 （3）Programming assistance functions

 Mathematical constant memory unit This memory unit stored mathematical constants frequently used in programs. The memory unit used a simple format that could not be rewritten. It held about 50 constants, including the numbers 0 to 10, the fraction 1/10, 1, π, sin 15, log (e) to base 10, and log (10) to base e. The mathematical constant memory unit had a capacity of 85 words, but some were left blank for future expansion.
 Embedded instruction unit This unit hardwired frequently used subroutines. It used the same simple method as the mathematical constant memory unit. Embedded subroutines included finding the product, quotient, and square root of complex numbers, logarithms, and some trigonometric functions and inverse trigonometric functions. The embedded instruction unit could hold 50 subroutine entries including blank entries for future expansion.
 The following are some additional notes on several of the above characteristics that are particularly distinctive. Fujitsu engineers learned from the FACOM 100, the company’s first relaybased computer, that the advantage of a computer lay not only in its calculation speed but also in the fact that it made no mistakes. Following this design philosophy, relays were used as logic elements instead of vacuum tubes precisely because of their higher reliability, and all models after the FACOM 100 included selfcheck errorchecking functions and auto reexecution functions to handle relay contact failures and other mechanical problems.
The FACOM 128A performed its calculations in biquinary coded decimals, instead of the binary codes that would become nearly universal in later computers, as a result of balancing the efficiency of the selfcheck function and the speed of calculations. If binary notation were used internally, conversions to decimal notation would be needed for each I/O operation for external use, which would lower the overall performance. At the same time, to perform the selfchecks quickly, numbers had to be represented in a way that simplified the checking for errors in each number. Taking both of these factors into account, the FACOM 128A used biquinary coded decimals consisting of seven bits for its numeric code.  2.FACOM 128B
 The FACOM 128B, which was completed in May 1958, included the following performance and usability upgrades based on usage experiences with the FACOM 128A.
 （1）Performance enhancements due to circuitry and other improvements
 Partial performance comparison of the FACOM 128A and the FACOM 128B
Calculation Type FACOM 128A Performance FACOM 128B Performance Addition and subtraction 0.15 seconds 0.1 to 0.2 seconds Multiplication 0.15 to 0.4 seconds 0.1 to 0.35 seconds Division and square roots 0.2 to 1.0 seconds 0.1 to 1.4 seconds Multiplication of complex numbers 1.8 seconds 1.6 seconds Log x to base 10 5 seconds 3.5 seconds 16digit addition or subtraction n/a 0.6 seconds  16digit additions and subtractions This capability was added for better performance in precision calculations.
 Partial performance comparison of the FACOM 128A and the FACOM 128B
 （2）Better usability

 Addition of userconfigurable mathematical constants The mathematical constant memory was rethought for the 128B. The 50 or so fixed constants on the 128A were narrowed down to about 20 fixed constants. At the same time, two mathematical constant card readers were supplied so that users could configure up to 40 pairs of mathematical constants. This gave the computer more flexibility.
 Provision of a user manual Today, it is a given that computers come with a user manual but that was not the case in the 1950s. The manual supplied with the FACOM 128B was pragmatic and tothepoint and was written in a detailed fashion to address the needs of many kinds of users.
 The FACOM 128B, with its improved performance and usability as noted above, was used in a multitude of numeric calculation fields such as multiorder simultaneous equations, higherorder algebraic equations, eigenvalue problems, differential equations, integral equations, statistical analyses, and Monte Carlo methods. It was also used as a practical business machine. In industry, it was widely used for such applications as camera lens design, design of the YS11 domestically produced passenger airplane, and calculation services.*
*Japan’s first forfee calculation service was started by the Yurin Denki Seiki company in 1956 using a FACOM 128A.