Virtual Museum of Calculators
Menu
C/CE
Calculators
Slide Rules
Others
Manufacturers
Search
Váltás magyarra
Back to Showroom
EMG
HUNOR 301
1977
Sharp
EL-5100
1979

Elektronika B3-34

Brief History
The Elektronika B3-21 was in production since 1977 at Kalkulator factory, but due to its extremely sophisticated programming method, it was not became a success, but the need to a programmable calculator was helped to sold out that model. In addition to experience with the B3-21, examination of the western calculators (especially Hewlett-Packard and Texas Instruments models) resulted to start designing a new programmable pocket calculator. The Elektronika B3-34 was introduced in 1980, and was a great success: it has the ordinary 4-level stack instead of the separated 2-level stack and a rollable register group. The B3-34 has 14 addressable memory registers, a program memory with capacity of 95 steps, and has new features such as four looping operations and indirect addressing. Its use was easy to understand due to redesigned and simplified keyboard layout and the directly keying of jumping addresses. This model was in production by 1985, then replaced by newer models with similar funcionality (MK-54 and later the MK-61).
Manufacturer:Калькулятор (Kalkulátor) (USSR)
Mfg. date:1980-85
Size:10×18,5×4 cm
Weight (ready for operate):n.a.
Type:programmable scientific
Capacity:8+2 digits (input/display)
8+2 digits (internal precision)
Operating logic:RPN
CPU:Rodon K145IK1302 + K145IK1303
Registers:4 standard
14 memory (without arithmetic)
Features:+/-change sign (direct entry of negative numbers) RVexchange registers (X-Y) Ffloating-point notation Sciscientific (exponential) notation Sqrsquare root x2square pivalue of pi (3.1415..) can be recalled 1/xreciprocal trigtrigonometrical functions (sin, cos, tan and inverses: arcsin, arccos, arctan) logexponential and logarithmical functions (10- and e-base) yxraising to power
Display:12 digit VFD
Power:built-in battery pack (4 pcs)
Programming method:merged keystroke-programmable
Program capacity:95 steps
Test results:trigonometry:result of sin-1(cos-1(tan-1(tan(cos(sin(60°)))))), reference value: 60. 60.011803
exponential:result of 0.999160000, reference value (first 14 digits): 3.0068804206375×10-70

B3-34

Inside of the B3-34

Keyboard of the B3-34
Detailed Description

Using

The Elektronika B3-34 works with numbers of 8+2 digits. The functions labeled in brown above the keys can be executed with the F prefix key. During keying in numbers in exponential notation, the exponent can be entered after pressing БП.

The stack

The machine operates with reverse polish notation (RPN) system, so all operations must be written (keyed) after the operands. The stack has four levels with registers X, Y, Z and T. The input and moving registers up (X to Y, previous value of Y to Z, previous value of Z to T) can be achieved by pressing ENTER, here appeared as . This shifting is executed automatically when a number was recalled from memory. After carried out two-operand functions, the result obtained in the X register, and the remaining stack registers shifts down, but the T register keeps its value.

To exchange the X and Y register contents, press x↔y. The F ROLL (circle-shaped arrow, secondary function of , key) rolls or shifts the stack as follows: X moved to T, Y moved to X, Z to Y, T to Z. Example: 1 2 3 4 x↔y F ROLL results to the following contents: 4 in X, 2 in Y, 1 in Z and 3 in T registers.

Memory registers

In addition to stack registers described above, the B3-34 has 14 addressable memory registers. The first ten (0..9) can be addressed by the appropriate number key, the last four can be used with the ,, /-/, ВП and Сx keys. After pressing П and the address key, the contents of X register stores in the given memory register. Similar to that, the ИП key can be used to recall a value stored previously in a given memory register.

Last X register

After executing any operation, the previous contents of the X register was always kept in the X1 register, and can be recalled with F Вx keying.

Carrying out functions

The angular units used by trigonometric functions can be set with the switch on the right side: its left position (Р) means units in radians, right position (Г) means degrees.

Raising to powers is different to usual method: first, the power must be stored in the stack, then the base. E.g. to compute 23, press 3 2 xy.

Overflow error is displayed with ERROR, which can be cleared with Сx.

Programming

To switch to program write mode, press F ПРГ. The two-digit numer on the right is the program counter (PC). The program area can stores up to 95 steps, addressed with numbers 00 to 94. The code numbers at the left side means the stored keycodes in the steps PC-1, PC-2 and PC-3. So reading the program is carried from right to left. The key combinations with F key occupies only one step. The program editing keys are the following:
  • ШГ→ – moves forward one step.
  • ШГ← – moves backward one step.
  • F НОП – stores a NOP (No Operation) command at the current address.
Removing steps from the program can be only achieved by overwriting these steps with the NOP command.

At the end of a program, a С/П command must be placed.
KeycodeKey
0F Вx
00..090..9
0-.
0L/-/
0CБП
0RСx
0E
10+
11-
12×
13÷
14x↔y
15F 10x
16F ex
17F lg
18F ln
19F arcsin
1-F arccos
1LF arctg
1CF sin
1RF cos
1EF tg
20F π
21F
22F x2
23F 1/x
24F xy
25F ROLL
40..4EП azonosító
50С/П
51БП
52В/О
53ПП
54K НОП
57F x≠0
58F L2
59F x≥0
5-F L3
5CF x<0
5LF L1
5RF L0
5EF x=0
60..6EИП identifier
70..7EK x≠0 identifier
80..8EK БП identifier
90..9EK x≥0 identifier
L0..LEK П identifier
R0..REK ИП identifier
C0..CEK x<0 identifier
E0..EEK x=0 identifier
-0..-EK ПП identifier

The keycodes of the B3-34

Jumping commands can be placed with БП, but this key can be used in АВТ mode, if the program start address is different from 00. Defining jumping address can be achieved with keying in the two digit step number after БП. E.g. to jump to address 12, press БП 1 2. This command occupies two steps, as can be seen on the display: 12 58.

Conditional jumps can be programmed with the four condition functions, which tests relations with X and 0. E.g. F X<0 gives true result for negative X values. It is interesting, that these conditional jumps operates reversed in comparing to other calculators: if the condition is met, program continues on the step after the jumping command, but the condition is not met (false), a jump was made to the specified address.

In addition to these, the machine allows special commands for programming loops. The F L0 .. F L3 uses the corresponging memory registers (0..3), decrements the contents of that register by 1 and tests it for equals with 0. If this is false (not equals to 0), a jump was made to the specified address, but if this is true (0), the program continues with the next command.

Subroutines can also be programmed, the same way as described at the БП command. The subroutine must be closed with a В/О command, which instruct the calculator to return the address next to the subroutine-jump command. 5 levels of subroutines can be nested.

Indirect addressing

This calculator allows indirect addressing of memory registers and jumping commands. All of the 14 memory registers can be used to store the address for an indirect command, but the first seven (0..6) has special features. The indirect addressing can be used with the K prefix key. All indirect commands occupies only one program step.

K П causes to store contents of register X to memory register specified by the given memory register.
K ИП causes to recall contents of memory register addressed by the given memory register.
K БП jumps to address stored in the given memory register. Using K ПП to jumping to a subroutine, or K and a condition expression key can be used the similar way.

It is important, the fractional part of the contents of the given memory register will be lost, and the integer part defines the indirect address. The register will be filled with leading zeroes to the full 8-digit capacity. E.g. if 5.14 was stored in the memory register 8, K ИП 8 causes contents of the memory register 8 changes to 00000005, then the display will show the contents of the memory register 5.

The first four (0..3) memory register contents decremented by 1, the registers 4, 5 6 incremented by 1 when these was used for indirect addressing. The decremented, or incremented value will be used for indirect addressing. E.g. if 25 was stored in memory register 1, K БП 1 resulted memory 1 was decremented by 1 (it stores 00000024), the program execution was jumped to address 24.

Running the program

To exit from learn mode, press F АВТ.

To start the program from the current program counter, press С/П. To jump to a specified address (and then start the program from that address), the БП key can be used the same way as within programs. To jump to address 00, simply press В/О.

Interesting features

This model was very popular due to its "undocumented" features: the error message on the display (ERROR) can be used for further operations, while the keyboard is not locked in this situation.
Similar items
Искра/Iszkra
B3-23
1976-9x
Искра/Iszkra
MK66
1991 körül
HT
PTK-1060
1977
Design & HTML: Modulit Bt.
(C) www.arithmomuseum.com 2004-2016.