Compucorp 326 Scientist

The Compucorp 326 Scientist is the last in a line of fabulous calculators, made by the legendary Compucorp division of the long defunct Computer Design Corporation. It was also the only 300-series Compucorp machine with an advanced programming model that included conditional and unconditional branching, labels, and subroutines.

These machines are simply beautiful. Despite their large size, they have a graceful appearance; they look like oversize pocket calculators, in fact, but designed with a perfect sense of aesthetic proportions.

The Compucorp 326 has 160 partially merged program steps (many multi-keystroke instructions are merged into a single keycode.) A standard accessory to this calculator is the Compucorp 392 tape drive, which could record programs to standard cassettes, or specially manufactured endless cassettes made by Compucorp.

The Compucorp 326 displays program steps using a screen format that, until now, I thought was unique to Russian calculators like the B3-21. In addition to the current program step, the preceding and succeeding steps are also shown. So for instance, if your program consists of the steps 789, and the program counter is at step 2, you'd see the following when the RUN/STEP/LOAD switch is in the LOAD position:

007 .002 008 009

To demonstrate the more advanced programming model of the 326, I decided to use the incremental Gamma function as an example; rather than merely evaluating a complex formula, this program actually uses an iterative method to approximate a result with great accuracy. The program can also be used to calculate the Gamma function of an argument, by simply specifying a high enough integration limit.

Invoking the program is a bit unusual. To calculate the incomplete Gamma function for a=5, x=30, use the following keystrokes: 5×30START. (Use JUMP0 to position the program counter at the beginning of the program if necessary.) This method made it possible to create a program with no embedded STOP instructions, and it also made it possible to create a program that can be used from within another calculation. For instance, the keystrokes 6+(5×30START)= will calculate the sum of 6 and the incomplete Gamma function for a=5, x=30.