HOME

TheInfoList



OR:

Synthetic programming is an advanced technique for programming the
HP-41C The HP-41C series are programmable, expandable, continuous memory handheld RPN calculators made by Hewlett-Packard from 1979 to 1990. The original model, HP-41C, was the first of its kind to offer alphanumeric display capabilities. Later cam ...
and
Elektronika B3-34 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 regist ...
calculators An electronic calculator is typically a portable electronic device used to perform calculations, ranging from basic arithmetic to complex mathematics. The first solid-state electronic calculator was created in the early 1960s. Pocket-size ...
, involving creating
instructions Instruction or instructions may refer to: Computing * Instruction, one operation of a processor within a computer architecture instruction set * Computer program, a collection of instructions Music * Instruction (band), a 2002 rock band from Ne ...
(or combinations of instructions and operands) that cannot be obtained using the standard capabilities of the calculator. Some HP-41C instructions are coded in memory using multiple
byte The byte is a unit of digital information that most commonly consists of eight bits. Historically, the byte was the number of bits used to encode a single character of text in a computer and for this reason it is the smallest addressable unit ...
s. Some of these sequence of bytes correspond to instructions the calculator is able to execute, but these cannot be entered in the program memory using conventional program entry methods (''i.e.'' using the calculator as described in the user's manual.) Synthetic programming uses a bug in the calculator firmware to enter those byte sequences as a sequence of other instructions, then partially skipping halfway through the first instruction, so that the calculator believes the end of the first instruction is actually the beginning of a new one. It is not clear if the creators behind the HP-41 were aware of all these "black holes". HP did not officially support these techniques, but probably was intrigued by the strange operations and in some cases allowed enthusiasts to practice in their offices and helped to improve it among a whole sense of curiosity.


References

* * * * *
Microcode-Level Calculator Simulation
by Eric Smith, presented at 2004 Hewlett-Packard Handheld Conference in San Jose, California on 26 September 2004


See also

* Yeggogology (Cyrillic: "Еггогология") Synthetic programming {{compu-prog-stub