(2012-11-27) Keyboard, Keys and Modifier Keys
Advanced calculators assign more than one function to most keys.
On the keyboards of basic calculators, every key is assigned one and
only one use, digit entry, binary operation (plus, minus, multiply or divide) or
unary operation (typically, only the square root function is provided on
such calculators).
Scientific calculators have to provide so many functions
that several uses must be assigned to a single key.
On the HP 35s, the additional functionalities are obtained by pressing
either of two special colored keys (blu or yellow)
before punching the main key (whose extra functionality may be
indicated by a label of the same color, either on the key itself or nearby
on the faceplate).
Back in 1972, the original HP-35 only had 35 keys (hence its name).
It featured a single modifier key, marked "arc", which
was used to obtain the inverse of a trigonometric function by punching
it before the key normally assigned to the direct trigonometric function.
(2015-12-09) Reverse Polish Notation (Jan Lukasiewicz, 1924)
RPN is the fastest way to enter data. Parentheses not needed.
(2012-11-27) Common unit conversions.
Just the most common ones...
(2012-11-27) 40 physical constants and a mathematical one
( e )
Accessible via one single menu selection.
HP advertises 41 physical constants, but their 41-st is the value of the
mathematical constante,
the base of natural logarithms (2.718281828)...
although it's otherwise readily available in 2½ keystrokes:
[ 1 ] [ e^{x} ]
This is rather unfortunate, because the symbol e
in any list of physical constants always refers to the elementary charge
(the electric charge of a proton, the opposite of the charge of an electron).
Since the value of the elementary charge in coulombs (C, the SI unit)
is unavoidable in such a list, they skirted the issue by giving the value of the
electronvolt (eV) in joules (J) which is the same
number (by the very definition of the electronvolt).
The molar volume given in the HP 35s is for
an ideal gas under co-called normal temperature and pressure
(NTP, 0°C, 1 atm = 101325 Pa).
In Casio calculators competing directly against the HP 35s,
standard temperature and pressure
(NTP, 0°C, 1 bar = 100000 Pa)
is used instead to define that particular constant.
Otherwise, the calculators of both manufacturers feature exactly the same set
of 40 physical constants...
The standard convention
(discussed elsewhere on this site)
is that the digits between parentheses that follow
a measured quantity indicate its experimental uncertainty (one standard deviation)
expressed in units of the least significant digit.
The built-in physical constants of the HP 35s are based on CODATA 1998 :
As of 2012, the above values have not been updated in the HP-35s since its first release, in 2007.
They are based on on
CODATA 1998
which was already several years out of date in 2007
(CODATA 2002
was then current, since
CODATA 2006
was only officialized in 2008).
At this writing,
the values listed above (CODATA 2010) have been current since June 2011
and are not expected to be updated until 2015 or so.
The values highlighted in yellow correspond to slight mistakes and inaccuracies
in the HP 35s built-in constants.
The constants singled-out in this way are known exactly (because of the way SI units are defined)
but have been rounded incorrectly and/or needlessly truncated
below the nominal 12-digit precision of the calculator
(to say nothing of its advertised 15-digit precision for "internal computations").
Arnold Sommerfeld's Fine-Structure
constant (a) is the only listed
constant to be dimensionless. Its numerical value would be the same
in any coherent system of physical units and it remains a mystery:
(2012-11-27) Bug Reports
Severe problems and minor ones.
Inaccurate functions :
For the expression tan(89.999°) = 1 / tan(0.001°)
my new (2012) HP 35s still gives the inaccurate value (57295.7795401)
that users were complaining about way back in 2007. The correct value is:
57295.7795072645567033655767369...
My first diagnosis was that it could have been due to the following
beginner's mistake in the implementation of the tangent function:
The typical way to compute the tangent function quickly and with high precision is
to use an optimal polynomial approximation for values of x whose
magnitude doesn't exceed 45° = p/4
(beyond that, you compute the reciprocal of tan(90°-|x|) instead).
If you were to use directly a standard
Chebychev economization
of tan(x) for the aformentioned polynomial approximation, you'd be essentially
minimizing the absolute error on a function that may vanish
(at x=0). The fairly large relative errors in the neighborhood
of x=0 would result in floating-point values
that would be erroneous at their nominal precision.
Instead, you obtain an acceptable polynomial approximation
by multiplying x into a Chebychev economization of
tan(x)/x (which is itself a poplynomial in x^{2 }).
Well, whatever mistake the HP engineers did does not reduce to the above.
They seem to have implemented correctly the sine function
(for which the above warning would have applied too) and the cosine function.
Yet, the ratio sin(x)/cos(x) gives exactly the above erroneous value for
x = 89.999°. This is a clue that they "cut corners" by wrongly
implementing the tangent as a sin/cos ratio, which is not numerically stable...
(2012-11-27) Complex Functions of Complex Variables
Discontinuity cliffs appear in the complex extensions of some functions.
(2012-12-09) Programming
Turing-complete (only marginally less versatile than the HP 33s).
Like other calculator of its class, the HP-35s is programmed by recording the
sequences of keys that would be necessary to produce a result.
Such sequences may depend on the data-entry mode that's being used
(RPN or "algebraic" infix). Therefore a program written with RPN mode in mind will
most probably not execute properly if the calculator is in algebraic mode
(and vice-versa).
My recommendation (and the recommendation of everybody who
is familiar with the HP-35s)
is to always run this calculator in RPN mode and to write
programs exclusively for that mode (the capability to use an infix entry
mode is no more than a misguided marketing decision which can be safely ignored).
User-defined programs are essentially executed like predefined programs, using the
"R/S" key ("run/stop") at the top-left corner of the keypad.
The blue-shifted function of this key ("PRGM") is to enter the
programming mode, where you see every recorded instruction appear wih a 4-digit
line number.
If all you ever wanted to do was run a single program, what ypu would do is
enter the corresponding instructions staring with line 0001 and execute the
sequence by making the program counter point to the beginning
(by pushing GTO 1) before hitting the R/S key.
It's optional to start such a lone program with a "label" and to end it with the RTN instruction
but we may as well get into the habit of doing it (since it's mandatory if we
stored more than one program, as will be discussed later).
The single-letter "label" (here A) is the name of the routine and will appear
as the first character in the line numbers for that routine (which can
have at most 999 lines in it).
Example: To compute the area of a circle of given radius: