HP-16C

Last updated

HP-16C
Hewlett-Packard Model HP-16C Programmable RPN Calculator, HP's First and Only Calculator esp. for Programmers, built 1982-1989 (edited to rectangular, V2).jpg
HP-16C, showing its model name on the display as a hexadecimal number
Type Programmable, computer science
Manufacturer Hewlett-Packard
Introduced1982
Discontinued1989
Cost150 USD (1982) – 120 USD (1989) [1]
Calculator
Entry mode RPN
Display type LCD seven-segment display
Display size10 digits
CPU
Processor HP Nut
Programming
Programming language(s) Keystroke programming (fully merged)
Memory register203 bytes (shared with programs) [2]
Program stepsup to 203 steps (shared with data registers)
Other
Power supplyLR44 1.5 V button cells
Power consumption0.25 mW
Weight113 g
Dimensions128 × 79 × 15 mm

The HP-16C Computer Scientist is a programmable pocket calculator that was produced by Hewlett-Packard between 1982 and 1989. It was specifically designed for use by computer programmers, to assist in debugging. It is a member of the HP Voyager series of programmable calculators. It was the only programmer's calculator ever produced by HP, though many later HP calculators have incorporated most of the 16C's functions.

Contents

Features

The 16C can display integers in hexadecimal, decimal, octal and binary, and convert numbers from one number base to another. It also deals with floating-point decimal numbers. To accommodate long integers, the display can be 'windowed' by shifting it left and right. For consistency with the computer the programmer is working with, the word size can be set to different values from 1 to 64 bits. Binary-arithmetic operations can be performed as unsigned, ones' complement, or two's complement operations. This allows the calculator to emulate the programmer's computer. A number of specialized functions are provided to assist the programmer, including left- and right-shifting, left- and right-rotating, masking, and bitwise logical operations.

Apart from programmer functions, the calculator's abilities are limited to basic arithmetic (and reciprocal and square root), [3] which meant that typical users would also make use of a general scientific calculator. Floating-point numbers are only supported for base 10. However, it is still far more powerful (though also much more expensive) than contemporary competitors such as the non-programmable computer math calculator Casio CM-100 [4] [5] or the TI Programmer  [ de ], [6] [7] LCD Programmer [8] [9] [10] or Programmer II. [11]

The back of the 16C features a printed reference chart for many of its functions. [12]

The calculator uses the proprietary HP Nut processor produced in a bulk CMOS process and featured continuous memory, whereby the contents of memory are preserved while the calculator is turned off. [13] Though commonplace now, this was still notable in the early 1980s, and is the origin of the "C" in the model name.

Programming

The 16C, like all other members of the Voyager series, is itself programmable. Keystroke programming is used. Up to 203 program steps are available, and up to 16 program/step labels. Each step and label uses one byte, which consumes register space in 7 byte increments. Here is a sample program that computes the factorial of an integer number from 2 to 69. The program takes up 9 bytes. The codes displayed while entering the program generally correspond to the keypad row/column coordinates of the keys pressed.

StepKeystrokes
(shift keys not shown)
Displayed codeComment
001LBLF43,22, FDefine label F (mnemonic for "factorial")
002x<>I42 22Store x in register I
00311Store 1 in x
004LBL043,22, 0Define label 0
005RCLI45 32Recall register I into x
006×20Multiply x and y
007DSZ43 23Decrement register I and if not zero ...
008GTO022 0... go back to label 0
009RTN43 21Stop program - result displayed in x

To run the program, enter the argument onto the stack, then press the keystrokes GSBF. The result is displayed when the program terminates.

Legacy

The SwissMicros DM16L is built very close to the HP-16C in terms of functionality, design and dimensions. It runs an image of the original HP-ROM on an emulator using an ARM microprocessor SwissMicros DM16L Programmable Calculator, emulating an HP-16C (1982).jpg
The SwissMicros DM16L is built very close to the HP-16C in terms of functionality, design and dimensions. It runs an image of the original HP-ROM on an emulator using an ARM microprocessor

HP has never made another calculator specifically for programmers, [2] but has incorporated many of the HP-16C's functions in later scientific and graphing calculators, for example the HP-42S (1988) and its successors.

Like many other vintage HP calculators, the HP-16C is now highly sought-after by collectors. [14] Several emulators are available for desktop computers, web browsers, smartphones and other calculators. [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25]

In 2012, SwissMicros (aka RPN-Calc) introduced a miniature clone named DM-16CC approximating the size of an ID-1 credit card (88 mm × 59 mm × 7 mm). It closely emulates the functionality of the original HP-16C by running the original ROM image in an emulator on an ARM Cortex-M0-based NXP LPC1114 processor. Newer DM16 models feature a better keyboard and more RAM (LPC1115). A DM16 Silver Edition in a titanium case is available as well in three color variants (metal, brown, blue). [26] Deviating from the original, these calculators feature a dot-matrix display, switchable fonts and clock speeds, and, based on a Silicon Labs CP2102 converter chip, [27] they come with a USB (Mini-B [28] ) serial interface to exchange data with a PC etc. for backup purposes (and possibly to communicate with applications like PC-based HP-16C emulators) or to update the firmware. In December 2015, SwissMicros introduced the DM16L, a version of the calculator about the same size as the original HP-16C. It still comes with a USB Mini-B connector. Powering via USB is not supported.

In July 2023, the HP Development Company, L.P.'s licensees Moravia Consulting spol. s r.o. and Royal Consumer Information Products, Inc. introduced the hp 15C Collector's Edition, which comes with an undocumented mode to emulate the HP-16C as well, although this is somewhat compromised by a bug which means that numbers whose hexadecimal representation ends in E or F are displayed incorrectly in decimal mode.

See also

Related Research Articles

<span class="mw-page-title-main">Calculator</span> Electronic device used for calculations

An electronic calculator is typically a portable electronic device used to perform calculations, ranging from basic arithmetic to complex mathematics.

Scientific notation is a way of expressing numbers that are too large or too small to be conveniently written in decimal form, since to do so would require writing out an inconveniently long string of digits. It may be referred to as scientific form or standard index form, or standard form in the United Kingdom. This base ten notation is commonly used by scientists, mathematicians, and engineers, in part because it can simplify certain arithmetic operations. On scientific calculators, it is usually known as "SCI" display mode.

<span class="mw-page-title-main">HP 48 series</span> Series of graphing calculators

The HP 48 is a series of graphing calculators designed and produced by Hewlett-Packard from 1990 until 2003. The series includes the HP 48S, HP 48SX, HP 48G, HP 48GX, and HP 48G+, the G models being expanded and improved versions of the S models. The models with an X suffix are expandable via special RAM and ROM cards. In particular, the GX models have more onboard memory than the G models. The G+ models have more onboard memory only. The SX and S models have the same amount of onboard memory.

<span class="mw-page-title-main">HP 49/50 series</span> Series of graphing calculators by Hewlett-Packard

The HP 49/50 series are Hewlett-Packard (HP) manufactured graphing calculators. They are the successors of the popular HP 48 series.

<span class="mw-page-title-main">Scientific calculator</span> Calculator designed to calculate problems in science, engineering, and mathematics

A scientific calculator is an electronic calculator, either desktop or handheld, designed to perform calculations using basic and complex mathematical operations and functions. They have completely replaced slide rules as well as books of mathematical tables and are used in both educational and professional settings.

RPL is a handheld calculator operating system and application programming language used on Hewlett-Packard's scientific graphing RPN calculators of the HP 28, 48, 49 and 50 series, but it is also usable on non-RPN calculators, such as the 38, 39 and 40 series. Internally, it was also utilized by the 17B, 18C, 19B and 27S.

4-bit computing is the use of computer architectures in which integers and other data units are 4 bits wide. 4-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on registers or data buses of that size. A group of four bits is also called a nibble and has 24 = 16 possible values.

<span class="mw-page-title-main">HP 33s</span>

The HP 33s (F2216A) was a scientific calculator marketed by Hewlett-Packard. It was introduced in 2003 as the successor to the HP 32SII, and discontinued on the introduction of its successor the HP 35s in 2007.

<span class="mw-page-title-main">HP-41C</span> Hewlett-Packard handheld RPN calculator

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 came the HP-41CV and HP-41CX, offering more memory and functionality.

<span class="mw-page-title-main">HP-42S</span>

The HP-42S RPN Scientific is a programmable RPN Scientific hand held calculator introduced by Hewlett-Packard in 1988. It has advanced functions suitable for applications in mathematics, linear algebra, statistical analysis, computer science and others.

Engineering notation or engineering form (also technical notation) is a version of scientific notation in which the exponent of ten is always selected to be divisible by three to match the common metric prefixes, i.e. scientific notation that aligns with powers of a thousand, for example, 531×103 instead of 5.31×105 (but on calculator displays written without the ×10 to save space). As an alternative to writing powers of 10, SI prefixes can be used, which also usually provide steps of a factor of a thousand. On most calculators, engineering notation is called "ENG" mode as scientific notation is denoted SCI.

<span class="mw-page-title-main">Casio fx-7000G</span> Graphing calculator by Casio

The Casio FX-7000G is a calculator which is widely known as being the world's first graphing calculator available to the public. It was introduced to the public and later manufactured between 1985 and c. 1988. Notable features are its ability to graph functions, and that it is programmable. The calculator offers 82 scientific functions and is capable of manual computation for basic arithmetic problems.

Programmable calculators are calculators that can automatically carry out a sequence of operations under control of a stored program. Most are Turing complete, and, as such, are theoretically general-purpose computers. However, their user interfaces and programming environments are specifically tailored to make performing small-scale numerical computations convenient, rather than general-purpose use.

<span class="mw-page-title-main">Hewlett-Packard Voyager series</span> Programmable calculator, 1982–1984

The Hewlett-Packard Voyager series of calculators were introduced by Hewlett-Packard in 1981. All members of this series are programmable, use Reverse Polish Notation, and feature continuous memory. Nearly identical in appearance, each model provided different capabilities and was aimed at different user markets.

<span class="mw-page-title-main">HP-15C</span> Programmable scientific calculator produce by Hewlett-Packard

The HP-15C is a high-end scientific programmable calculator of Hewlett-Packard's Voyager series produced between 1982 and 1989.

<span class="mw-page-title-main">HP-34C</span>

The HP-34C continuous memory calculator was an advanced scientific programmable calculator of the HP 30 series. It was produced between 1979 and 1983.

<span class="mw-page-title-main">HP 35s</span> Programmable scientific calculator produced by Hewlett-Packard

The HP 35s (F2215A) is a Hewlett-Packard non-graphing programmable scientific calculator. Although it is a successor to the HP 33s, it was introduced to commemorate the 35th anniversary of the HP-35, Hewlett-Packard's first pocket calculator. HP also released a limited production anniversary edition with shiny black overlay and engraving "Celebrating 35 years".

<span class="mw-page-title-main">Casio FX-502P series</span> Series of programmable calculators produced by Casio

The FX-501P and FX-502P were programmable calculators, manufactured by Casio from 1978/1979. They were the predecessors of the FX-601P and FX-602P.

<span class="mw-page-title-main">HP 10s</span>

Introduced by HP for students, the HP 10s (F2214A) is a scientific calculator with more than 240 built-in functions, with 2 lines x 10 digits LCD. It is permitted to use on SAT and ACT tests.

The RPL character set is an 8-bit character set and encoding used by most RPL calculators manufactured by Hewlett-Packard as well as by the HP 82240B thermo printer. It is sometimes referred to simply as "ECMA-94" in documentation, although it is for the most part a superset of ISO/IEC 8859-1 / ECMA-94 in terms of printable characters, and it differs from ISO/IEC 8859-1 by using displayable characters rather than control characters in the 0x80 to 0x9F range of code points.

References

  1. Thimet, Tony. "Hewlett Packard HP-16C" . Retrieved 2013-07-16.
  2. 1 2 "HP-16C". Museum of HP Calculators. Retrieved 2013-07-16.
  3. Toth, Viktor. "Hewlett-Packard HP-16C" . Retrieved 2013-07-16.
  4. https://edspi31415.blogspot.de/2017/02/retro-review-casio-cm-100-computer-math.html
  5. "Casio CM-100 - Calculatrice LCD - Casio CM100 - Casio.ledudu.com - bibliothèque des ordinateurs et des calculatrices Casio de ledudu. - RETRO CALCULATOR FX PB SF LC SL". casio.ledudu.com.
  6. "DATAMATH". www.datamath.org.
  7. electronic calculator - TI programmer (PDF). Texas Instruments Incorporated. 1977. Archived (PDF) from the original on 2017-03-28. Retrieved 2017-03-28.
  8. Thimet, Tony. "Texas Instruments LCD Programmer" . Retrieved 2013-07-16.
  9. "DATAMATH". www.datamath.org.
  10. electronic calculator - TI LCD programmer (PDF). Texas Instruments Incorporated. 1981. Archived (PDF) from the original on 2017-03-28. Retrieved 2017-03-28.
  11. "DATAMATH". www.datamath.org.
  12. "Hewlett-Packard 16C aka Voyager PR". MyCalcDB. Retrieved 2013-07-16.
  13. "HP-16C Owner's Handbook" (PDF). Hewlett-Packard. Retrieved 2013-07-16.
  14. Albillo, Valentín. "Long Live the HP-16C!" (PDF). Archived from the original (PDF) on 2011-09-06. Retrieved 2013-07-16.
  15. Gray, Emmet (2012-02-05). "WRPN Calculator" . Retrieved 2013-07-16.
  16. "Java HP16C Emulator". 2005-08-15. Archived from the original on 2013-06-05. Retrieved 2013-07-16.
  17. Pfützenreuter, Elvis. "Web HP-16C emulator" . Retrieved 2013-07-16.
  18. "hpcalc-iphone" . Retrieved 2013-07-16.
  19. Schwartz, Jake; Grevelle, Rick (2003-10-20) [1993]. HP16C Emulator Library for the HP48S/SX. 1.20 (1 ed.). Retrieved 2015-08-15. (NB. This library also works on the HP 48G/GX/G+. Beyond the feature set of the HP-16C, this package also supports calculations for binary, octal, and hexadecimal floating-point numbers in scientific notation in addition to the usual decimal floating-point numbers.)
  20. Martin, Ángel M.; McClure, Greg J. (2015-09-05). "HP16C Emulator Module for the HP-41CX - User's Manual and QRG" (PDF). Archived (PDF) from the original on 2017-04-27. Retrieved 2017-04-27. (NB. Beyond the HP-16C feature set this custom library for the HP-41CX extends the functionality of the calculator by about 50 additional functions.)
  21. Martin, Ángel M. (2015-09-07). "HP-41: New HP-16C Emulator available". Archived from the original on 2017-04-27. Retrieved 2017-04-27.
  22. "What is HP-1XE?" . Retrieved 2017-03-13. (NB. HP-11C/12C/15C/16C microcode emulator package for HP 48S/48SX/48G/48GX/48G+/49G.)
  23. Thörngren, Håkan (2017-01-10). "Ladybug Documentation" (release 0A ed.). Retrieved 2017-01-29.
  24. "New HP-41 module available: Ladybug". 2017-01-10. Archived from the original on 2017-01-29. Retrieved 2017-01-29.
  25. "WRPN 16C" . Retrieved 2016-05-13.
  26. "SwissMicros.com" . Retrieved 2013-06-29.
  27. "Data". www.jepspectro.com. Retrieved 2020-01-09.
  28. "Manual" (PDF). www.swissmicros.com. Retrieved 2020-01-09.

Further reading