Elektronika B3-34 (Cyrillic: Электроника Б3-34) was a Soviet
programmable calculator
Programmable calculators are calculators that can automatically carry out a sequence of operations under the control of a stored computer programming, program. Most are Turing complete, and, as such, are theoretically general-purpose computers. ...
. It was released in 1980 and was sold for 85
rubles.
B3-34 used
reverse Polish notation
Reverse Polish notation (RPN), also known as reverse Łukasiewicz notation, Polish postfix notation or simply postfix notation, is a mathematical notation in which operators ''follow'' their operands, in contrast to prefix or 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 coefficient, sometimes argument, or more ambiguously mantissa, fraction, or characteristic) is the first (left) part of a number in scientific notation or related concepts in floating-point representation, consisting of its s ...
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 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:
MK-61,
MK-52, MK-54, MK-56. 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 or BASIC may refer to:
Science and technology
* BASIC, a computer programming language
* Basic (chemistry), having the properties of a base
* Basic access authentication, in HTTP
Entertainment
* Basic (film), ''Basic'' (film), a 2003 film
...
interpreter, was essentially a smaller version of the
PDP-11
The PDP–11 is a series of 16-bit minicomputers originally sold by Digital Equipment Corporation (DEC) from 1970 into the late 1990s, one of a set of products in the Programmed Data Processor (PDP) series. In total, around 600,000 PDP-11s of a ...
. Due to their high price and the growing popularity of much more powerful
personal computer
A personal computer, commonly referred to as PC or computer, is a computer designed for individual use. It is typically used for tasks such as Word processor, word processing, web browser, internet browsing, email, multimedia playback, and PC ...
s, such as
ZX Spectrum
The ZX Spectrum () is an 8-bit computing, 8-bit home computer developed and marketed by Sinclair Research. One of the most influential computers ever made and one of the all-time bestselling British computers, over five million units were sold. ...
, 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-solving. The genre's focus on story allows it to draw heavily from other narrative-based m ...
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
''Tekhnika Molodezhi'' (, "Technology for the Youth") is a Soviet, and eventually Russian popular science magazine which has been published monthly since 1933.
History and profile
''Tekhnika Molodezhi'' was established in 1933. During the Soviet ...
'' published a science fiction story "Way to Earth" 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 or E2PROM (electrically erasable programmable read-only memory) is a type of non-volatile memory. It is used in computers, usually integrated in microcontrollers such as smart cards and remote keyless systems, or as a separate chip d ...
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" 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
''Nauka i Zhizn'' (''Science and Life'', ) is a science magazine first issued during the years 1890–1900 in Russian Empire, and then since 1934 in the Soviet Union (and continued in the Russian Federation today).
See also
*Tekhnika Molodezhi
...
" ("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 serves as an intermediary layer situated between the central processing unit (CPU) hardware and the programmer-visible instruction set architecture of a computer. It consists of a set of hardware-level instructions ...
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 MK-161 and MK-152, designed and manufactured in
Novosibirsk
Novosibirsk is the largest city and administrative centre of Novosibirsk Oblast and the Siberian Federal District in Russia. As of the 2021 Russian census, 2021 census, it had a population of 1,633,595, making it the most populous city in Siber ...
since 2007, are partially backward compatible with B3-34 and are also based on reverse Polish notation, but they are only compatible on function level and don't reproduce the original undocumented features.
See also
*
Calculator spelling
Calculator spelling is an Unintended consequences, unintended characteristic of the seven-segment display traditionally used by calculators, in which, when read upside-down, the digits resemble letters of the Latin alphabet. Each digit may be mapp ...
*
Elektronika MK-18M
*
Seven-segment display
A seven-segment display is a display device for Arabic numerals, less complex than a device that can show more characters such as dot matrix displays. Seven-segment displays are widely used in digital clocks, electronic meters, basic calculators, ...
References
{{Reflist, refs=
[{{cite web , author-last=Володарский , author-first=Станислав , title=Путь к Земле ("Кон-Тики") , url=http://slavav.ru/way_to_earth/ , access-date=2015-07-20 , language=ru]
[{{cite web , title=Elektronika B3-34. Calculator - riddle. Page 1. , date=2009-10-26 , url=http://geocities.com/lautenaus/b334e.htm , access-date=2022-09-18 , website= , archive-url=https://web.archive.org/web/20091026223500/http://geocities.com/lautenaus/b334e.htm , archive-date=2009-10-26 , url-status=dead]
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