B3-34
   HOME

TheInfoList



OR:

Elektronika B3-34 (Cyrillic: Электроника Б3-34) was a Soviet programmable calculator. It was released in 1980 and was sold for 85 rubles. B3-34 used reverse Polish notation and had 98 bytes of instruction memory, four stack user registers and 14 addressable registers. Each register could store up to 8 mantissa or
Significand The significand (also mantissa or coefficient, sometimes also argument, or ambiguously fraction or characteristic) is part of a number in scientific notation or in floating-point representation, consisting of its significant digits. Depending on ...
digits and two exponent digits in the range to . The first Soviet programmable stationary calculator the ISKRA 123, using mains power, was released at the beginning of the 1970s. The first programmable battery-powered pocket calculator
Elektronika B3-21 Elektronika B3-21 (Cyrillic: Электроника Б3-21) was the first Soviet programmable calculator. It was released in 1977 and was sold initially for 350 rubles (190 in 1980-81, and just 80 rubles at late 1981). For comparison, 120 ruble ...
was developed by the end of 1977 and released at the beginning of 1978. Its successor, B3-34, wasn't backward compatible with B3-21. The instruction set, hardware architecture and microcode of the B3-34 defined the standard of the later Soviet programmable hand-held and office-desk calculators: , , , . Model numbers do not follow any special order: MK-54 is a slightly upgraded version of B3-34 and MK-56 is its desktop copy, while MK-61 and MK-52 are somewhat more advanced calculators with more operations and even EEPROM (MK-52 only). Later, at the end of the 1980s, much more powerful calculators appeared on the Soviet market. For example, the calculator or hand-held computer MK-90, which had a graphic LCD display and an internal
BASIC BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
interpreter, was essentially a pocket-sized variety of the
PDP-11 The PDP-11 is a series of 16-bit minicomputers sold by Digital Equipment Corporation (DEC) from 1970 into the 1990s, one of a set of products in the Programmed Data Processor (PDP) series. In total, around 600,000 PDP-11s of all models were sold, ...
. Due to their high price and the growing popularity of much more powerful personal computers, such as ZX Spectrum, these powerful calculators never gained popularity among the general Soviet population. Therefore, the B3-34-derived calculators are remembered by many as their "first computer". Despite very limited capability, people managed to write all kinds of programs for B3-34 and its later successors, including
adventure game An adventure game is a video game genre in which the player assumes the role of a protagonist in an interactive story driven by exploration and/or Puzzle video game, puzzle-solving. The Video game genres, genre's focus on story allows it to draw ...
s and libraries of sophisticated calculus-related functions for engineers. Hundreds, perhaps thousands, of programs were written for these machines, from practical scientific and business software, which were used in real-life offices and labs, to fun games for children. During 1985–1986 the science magazine '' Tekhnika Molodezhi'' published a science fiction story "
Way to Earth Way may refer to: Paths * a road, Thoroughfare, route, path or pathway, including long-distance paths. * a straight rail or track on a machine tool, (such as that on the Lathe (metal)#Bed, bed of a lathe) on which part of the machine slides * Way ...
" accompanied by programs for B3-34 that could be used to simulate a particular segment of Moon-Earth journey from the story. The Elektronika MK-52 calculator (using the extended B3-34 command set, and featuring internal
EEPROM EEPROM (also called E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, usually integrated in microcontrollers such as smart cards and remote keyless systems, or as a ...
memory for storing programs and external interface for EEPROM cards and other periphery) was used in the Soviet spacecraft program (for Soyuz TM-7 flight) as a backup for the on-board computer. This series of calculators was also noted for a large number of highly counter-intuitive mysterious undocumented features, not unlike the "
synthetic programming Synthetic programming is an advanced technique for programming the HP-41C and Elektronika B3-34 calculators, involving creating instructions (or combinations of instructions and operands) that cannot be obtained using the standard capabilities of ...
" of the American HP-41, which were exploited by applying normal arithmetic operations to error messages, jumping to non-existent addresses and other techniques. A clever step away from the documented path would often cause some highly unusual things. For example, operations over the hexadecimal number 0xF, which looked like a decimal point on the dark screen, could cause a number of bizarre effects, from complete freeze to self-modification of the program, temporary appearance of otherwise invisible undocumented registers and sometimes totally non-deterministic behavior. A number of respected monthly publications, including the popular science magazine " Nauka i Zhizn" ("Science and Life"), featured special columns, dedicated to optimization techniques for calculator programmers and updates on undocumented features for hackers, which grew into a whole esoteric science with many branches, known as "errorology" (Russian " еггогология," transliterated "yeggogologiya"). The error messages on those calculators were intended to appear as the English word "Error", which to the Russians looked like a meaningless "ЕГГОГ" (''YEGGOG''). B3-34 and its derivatives helped many Soviet programmers to develop their skills, because programming and debugging required ability to read and write machine code and optimize literally every byte of the program. The
microcode In processor design, microcode (μcode) is a technique that interposes a layer of computer organization between the central processing unit (CPU) hardware and the programmer-visible instruction set architecture of a computer. Microcode is a laye ...
of those calculators remains only partially published and some of their "dark secrets" are still a mystery and are still being researched by some enthusiasts. Like the HP-41 series in the Western countries, the B3-34 and its successors became a legend among some Soviet programmers and computer hobbyists. A number of websites provide the source of hundreds of programs for these calculators, technical documentation, lists of undocumented features and stories about them. Some Soviet hackers managed to modify B3-34 into digital multimeters, control interfaces for model railroads, added tape storage devices and other peripherals. Modern Russian calculators and , designed and manufactured in
Novosibirsk Novosibirsk (, also ; rus, Новосиби́рск, p=nəvəsʲɪˈbʲirsk, a=ru-Новосибирск.ogg) is the largest city and administrative centre of Novosibirsk Oblast and Siberian Federal District in Russia. As of the Russian Census ...
since 2007, are partially backward compatible with B3-34 and are also based on reverse Polish notation. However, they are only compatible on function level and don't reproduce the original undocumented features.


See also

* Calculator spelling * Elektronika MK-18M * Seven-segment display character representations


References

{{Reflist


External links


A book in Russian that includes a partial description of the B3-34 microcode
* :ru:Еггогология - A Russian Wikipedia article about some basic undocumented features of the B3-34
A function-level simulator of many Soviet calculators, including B3-34. Does not reproduce the undocumented features
Elektronika programmable calculators