Soviet Calculators · Volume 7

Operating Them

Soviet calculators came in the same two kinds as Western ones: algebraic machines, where the keys follow the problem as it is written, and the programmable machines with reverse Polish notation, where the numbers go in first and the operation follows. This volume works through one of each from its factory manual: the MK-51 scientific, and the MK-61 programmable, which runs the same command set as the B3-34, MK-54, MK-56 and MK-52. The key legends are Cyrillic, so the MK-61 section starts with a translation.

Figure 1 — The two editions of the MK-61's operating manual, the short and the full, with the keyboard printed on the cover.
Figure 1 — The two editions of the MK-61's operating manual, the short and the full, with the keyboard printed on the cover. — Photo: Windshear, Wikimedia Commons, CC BY-SA 4.0.

7.1 The MK-51 scientific

The MK-51’s manual describes a pocket scientific with a nine-digit liquid-crystal display, 35 operations, two levels of brackets, a memory, statistics, and a power consumption of no more than one-thousandth of a watt. Numbers appear in ordinary form from 10⁻⁷ to 10⁸ − 1 and in exponent form from 10⁻⁹⁹ to 9.9999 × 10⁹⁹, and every operation is accurate to within one unit in the eighth digit.

The display carries symbols for its modes: F when the function key has been pressed; П when the memory holds a number; К in constant mode; Г, РАД or ГРД for degrees, radians or grads; σ in statistics mode; and E in the first position on overflow. A point alone in the display means the cell needs replacing.

The keys:

Table 1 — The keys:

KeyMeaning
0 … 9, ·digits and decimal point
+ − × ÷arithmetic; each also completes the operation set before it
=completes the operation
[( and )]two levels of brackets
/−/change the sign of the number or of its exponent
sin, cos, tgtrigonometric functions
√, 1/xsquare root, reciprocal
↔exchange the display and working registers
°′″convert degrees, minutes and seconds to decimal degrees
yˣpower
ln, lgnatural and common logarithms
ВПenter the exponent
Г РАД ГРДchange the angle unit, one press at a time
РЕЖmode: with F, statistics
х→П, П→х, П+store, recall, add to memory
Сclear the display and working registers, cancel F and constant mode; the memory is kept
СКcorrect the last number or operation entered
Fsecond functions: 10ˣ, eˣ, roots, inverse trigonometric functions, x², π, factorial, and memory exchange

Worked examples, as the manual gives them:

Table 2 — Worked examples, as the manual gives them

ProblemKeysDisplay
[(3 + 7) × 5 − 3] ÷ 8 = 5.8753 + 7 × 5 − 3 ÷ 8 =5.875
8 + 5 + 3 + 3 + 3 = 228 + 5 + 3 + 3 + 3 =22.
3 + 2.3 = 5.3, then 6 + 2.3 = 8.32 · 3 + + 3 =, then 6 =K 5.3, K 8.3
7 − 5.6 = 1.4, then −4.5 − 5.6 = −10.15 · 6 − − 7 =, then 4 · 5 /−/ =K 1.4, K −10.1

The first example shows that the MK-51 works from left to right, finishing each operation as the next key is pressed: 3 + 7 is 10, times 5 is 50, minus 3 is 47, divided by 8 is 5.875. The others show its constant: pressing an operation key twice makes the number on the display, and that operation, the constant, and the display shows K. Each new number followed by = then has the constant applied to it. A third press of the operation key, or another operation, leaves constant mode.

Overflow comes when any result exceeds 9.99999 × 10⁹⁹, when a result in memory would, on division by zero, on a function argument outside its range, or on an error in brackets or the memory during statistics. An E appears in the first position; C clears it.

7.2 The MK-61 programmable

7.2.1 The keys

The MK-61 has thirty keys with up to three meanings each: the white legend on the key, a yellow legend above it reached with F, and a blue legend reached with К.

Table 3 — The keys

KeyEnglish, or HP equivalentMeaning
В↑ (↑ on the B3-34)ENTERpush X into Y and lift the stack: Y to Z, Z to T, T lost
↔ (XY)x↔yexchange X and Y
СxCLxclear X
ВПEEXenter an exponent
/−/CHSchange the sign of the mantissa or exponent
Fyellow shiftthe functions printed in yellow
Кblue shiftinteger and fractional part, absolute value, sign, maximum, the logical operations, random number, no-op, indirect operations
Х→П (П on the B3-34)STOstore X in a register: 0–9, a, b, c, d, e
П→Х (ИП on the B3-34)RCLrecall a register into X
БПGTOunconditional jump; in run mode, set the program counter
ППGSBcall a subroutine, up to five levels deep
В/ОRTNreturn from a subroutine; in run mode, set the counter to 00
С/ПR/Sstop or start the program
ШГ→, ШГ←SST, BSTstep forward or back through the program
F ПРГ, F АВТPRGM, RUNprogram mode and automatic (run) mode
F ВхLASTxthe previous X, register X1
F x<0, x=0, x≥0, x≠0conditional tests
F L0 … L3DSNZcount down a loop in registers 0 to 3
F ⟳roll down
К [x], К {x}, К |x|, К ЗН, К maxINT, FRAC, ABS, SIGN, MAX
К ∧, ∨, ⊕, ИНВAND, OR, XOR, NOTon the BCD digits
К СЧRNDa random number
К НОПNOP
К with БП, ПП, a test, П→Х or Х→П, then a registerindirect GTO, GSB, branch, RCL or STOregisters 0–3 count down before use, 4–6 count up
Р / ГРД / ГRAD / GRAD / DEG switch

7.2.2 The stack

The MK-61 uses reverse Polish notation with a four-level stack, X, Y, Z and T, and a “previous X” register, X1. For a two-number operation, key in the first number, press В↑, key in the second, and press the operation; for a function, key in the number, then F and the function. Mesquita’s notes to the English translation run the stack-lift test from Hewlett-Packard’s HP Solve, 5 В↑ /−/ 2 +, and get 7: the MK-61 behaves like the classic HP-25 and HP-65.

Two cautions from the manual: everything is lost when the calculator is switched off, and it should be left off for at least 30 seconds before being switched on again. After carrying it in the cold, leave it four hours at room temperature before switching on. A row of decimal points across the display means the cells are low.

7.2.3 A first program: the area of a circle

The manual’s first program finds the area of a circle from its diameter, S = πd²/4, with d in register 2:

Table 4 — The manual's first program finds the area of a circle from its diameter, S = πd²/4, with d in register 2

KeyCodeWhat it does
П→Х 262recall d into X
F x²22d²
В↑0Ecopy d² into Y
F π20π into X
×12πd²
404
÷13πd²/4
С/П50stop and show the result

To run it for d = 4:

  1. Store the diameter: 4 Х→П 2.
  2. In run mode, go to the start of program memory: БП 0 0.
  3. Enter program mode with F ПРГ and key in the eight steps. The display shows the address and the codes of the last steps entered.
  4. Return to run mode with F АВТ.
  5. Reset the program counter with В/О and run with С/П.

The display shows 12.56637: π × 4² ÷ 4.

The English translation numbers this program from step 01 and says that step 00 is not available; the Russian original, and programs published for the B3-34, number from 00. Keying it in from step 00, as above, is the original’s way.

Figure 2 — Pages 2 and 3 of an MK-61 instruction booklet: the contents of the package and the start of the instructions.
Figure 2 — Pages 2 and 3 of an MK-61 instruction booklet: the contents of the package and the start of the instructions. — Photo: AToMikF, Wikimedia Commons, CC0.

7.2.4 Lunolet-1

The most famous program for these calculators is Лунолёт-1, “Lunolet-1”, a lunar-landing game published by Mikhail Pukhov in Техника — молодёжи no. 6 of 1985, in a story called Истинная правда, “The Real Truth”. Written for the B3-34, MK-54 and MK-56, it runs on the MK-61 and MK-52 with a few legends renamed. It fills almost the whole 98-step memory. The Library has the original magazine issue and an English translation, with the full listing.

The game sets up a ship on the Moon’s surface in the registers:

  • register 4: the Moon’s gravity, 1.62 m/s²;
  • register 5: the ship’s mass without fuel, 2,250 kg (two tonnes, plus a man of 150 kg and a boy of 100);
  • register 6: the exhaust velocity of a kerosene and liquid-oxygen motor, 3,660 m/s;
  • register 7: the greatest acceleration the crew can survive, 3 g, keyed as 9.81 В↑ 3 ×;
  • registers A and B: height and speed, both zero;
  • register D: 400 kg of fuel; register C: an hour of life support, 3,600 seconds;
  • register 9: a stored error state, made by dividing by zero, so that the display can later show a “Г” for an over-g warning.

Each move is a burn: the fuel to use, then ПП, then the time, then С/П. After each, the display shows the height, and XY the speed. In the story’s first move, 65 kg in 3 seconds is too much: the display shows Г, an over-g emergency. Pressing С/П again gives a height of 169 m and a speed of 84 m/s. A two-second coast, 0 ПП 2 С/П, gives 334 m and 81 m/s. The physics checks: 169 + 84 × 2 − ½ × 1.62 × 2² = 333.8 m, and 84 − 1.62 × 2 = 80.8 m/s.

Pukhov’s later serial, Путь к Земле, “The Road to Earth”, ran in the same magazine from no. 8 of 1985 to no. 4 of 1986, with programs to check each chapter’s events; some of them drew the scene on the display, with E for the Earth, 0 for the Moon and a minus sign for the ship.

7.2.5 Eggogology for beginners

The study of the MK-61’s undocumented behaviour, described in the inside volume, began with Pukhov’s stories. Three things to try:

  • Make a large number. 1 ВП 50 В↑ × gives 10¹⁰⁰: the display shows ЕГГОГ, but by the eggogologists’ account the number is still in the register, and dividing it by 10 should bring it back into the displayable range.
  • Tell a real error from a large number. К НОП clears a genuine error but leaves a large number untouched.
  • Look at the program codes as letters. A mode described in Техника — молодёжи no. 6 of 1987, credited to S. Bannikov, I. Emelyanov and B. Muradov, shows the codes of program steps on the display as “words”.
Figure 3 — A complete MK-61 set: the calculator, its manual, the box and the Д2-10М mains adapter.
Figure 3 — A complete MK-61 set: the calculator, its manual, the box and the Д2-10М mains adapter. — Photo: Sergei Frolov, Soviet Digital Electronics Museum, leningrad.su.

The manuals: the MK-61 operating manual and its English translation, the MK-52 manuals with their English version, the B3-34 manual and the MK-51 manual. For programs: Trokhimenko and Lyubich, Microcalculator, Your Move! (1985), and Epanechnikov and Tsvetkov, Handbook of Applied Programs for Microcalculators (1988).

Comments (0)

  1. Loading…

Comments are held for moderation — nothing appears until approved.