Hewlett-Packard HP-12C

Datasheet legend
Ab/c: Fractions calculation
AC: Alternating current
BaseN: Number base calculations
Card: Magnetic card storage
Cmem: Continuous memory
Cond: Conditional execution
Const: Scientific constants
Cplx: Complex number arithmetic
DC: Direct current
Eqlib: Equation library
Exp: Exponential/logarithmic functions
Fin: Financial functions
Grph: Graphing capability
Hyp: Hyperbolic functions
Ind: Indirect addressing
Intg: Numerical integration
Jump: Unconditional jump (GOTO)
Lbl: Program labels
LCD: Liquid Crystal Display
LED: Light-Emitting Diode
Li-ion: Lithium-ion rechargeable battery
Lreg: Linear regression (2-variable statistics)
mA: Milliamperes of current
Mtrx: Matrix support
NiCd: Nickel-Cadmium rechargeable battery
NiMH: Nickel-metal-hydrite rechargeable battery
Prnt: Printer
RTC: Real-time clock
Sdev: Standard deviation (1-variable statistics)
Solv: Equation solver
Subr: Subroutine call capability
Symb: Symbolic computing
Tape: Magnetic tape storage
Trig: Trigonometric functions
Units: Unit conversions
VAC: Volts AC
VDC: Volts DC
Years of production: 1981-present Display type: Numeric display  
New price: USD 79.95   Display color: Black  
    Display technology: Liquid crystal display 
Size: 3"×5"×½" Display size: 10(7+2) digits
Weight: 4 oz    
    Entry method: Reverse Polish Notation 
Batteries: 3×"LR44" button cell Advanced functions: Exp Lreg Fin Cmem 
External power:   Memory functions: +/-/×/÷ 
I/O:      
    Programming model: Fully-merged keystroke entry 
Precision: 10 digits Program functions: Jump Cond  
Memories: 20(7) numbers Program display: Keycode display  
Program memory: 99 program steps Program editing: Overwrite capability  
Chipset: Nut   Forensic result:  

*New version uses CR-2032 batteries

hp12c.jpg (17183 bytes)The HP-12C is arguably one of the most successful calculators ever made. Introduced almost 20 years ago, this calculator is still in production, and it is the de facto standard shirt-pocket calculator in use by business people.

The HP-12C is a programmable calculator with several business functions, including interest calculations, bonds, amortization, depreciation, and statistical functions. It has a maximum of 99 program steps or 20 data registers. When the calculator is initialized, 8 program steps are available; just like many other HP calculators, the HP-12C converts register memory dynamically into program memory as the user enters additional program steps. When all 99 program steps are used, 7 data registers still remain available for storage.

Although it isn't a scientific calculator, the HP-12C has built-in exponential and logarithm functions. This makes it easier to implement many mathematical algorithms, including that of the Gamma function. As it turns out, an implementation that calculates the function for any real argument fits neatly into the calculator's memory.

In order to run this program, registers 0-6 must be preset with the appropriate values. The program calculates the Gamma function itself (not its logarithm). The result should be accurate to at least 8 digits of precision.

M0:    √2π = 2.506628275
M1:    76.18009173
M2:    86.50532033
M3:    24.01409824
M4:    1.231739572
M5:    1.208650974e-3
M6:    5.395239385e-6

01 -  1 	1
02 - 34 	x-y
03 -  0 	0
04 - 43 34	x<=y
05 - 43,33 16	GTO 16
06 - 33 	Rv
07 - 36 	ENTER
08 - 33 	Rv
09 - 20 	×
10 - 33 	Rv
11 - 33 	Rv
12 - 33 	Rv
13 -  1 	1
14 - 40 	+
15 - 43,33 03	GTO 03
16 - 33 	Rv
17 - 44  7	STO 7
18 - 34 	x-y
19 - 44  8	STO 8
20 - 45  1	RCL 1
21 - 45  7	RCL 7
22 -  1 	1
23 - 40 	+
24 - 10 	÷
25 - 45  2	RCL 2
26 - 45  7	RCL 7
27 -  2 	2
28 - 40 	+
29 - 10 	÷
30 - 30 	-
31 - 45  3	RCL 3
32 - 45  7	RCL 7
33 -  3 	3
34 - 40 	+
35 - 10 	÷
36 - 40 	+
37 - 45  4	RCL 4
38 - 45  7	RCL 7
39 -  4 	4
40 - 40 	+
41 - 10 	÷
42 - 30 	-
43 - 45  5	RCL 5
44 - 45  7	RCL 7
45 -  5 	5
46 - 40 	+
47 - 10 	÷
48 - 40 	+
49 - 45  6	RCL 6
50 - 45  7	RCL 7
51 -  6 	6
52 - 40 	+
53 - 10 	÷
54 - 30 	-
55 -  1 	1
56 - 40 	+
57 - 45  0 	RCL 0
58 - 20 	×
59 - 45  7	RCL 7
60 - 10 	÷
61 - 43 23	LN
62 - 45  7	RCL 7
63 -  5 	5
64 - 48 	.
65 -  5 	5
66 - 40 	+
67 - 43 23	LN
68 - 45  7	RCL 7
69 - 48 	.
70 -  5 	5
71 - 40 	+
72 - 20 	×
73 - 40 	+
74 - 45  7	RCL 7
75 - 30 	-
76 -  5 	5
77 - 48 	.
78 -  5 	5
79 - 30 	-
80 - 43 22	ex
81 - 45  8	RCL 8
82 - 10 	÷