RPN-25 CE — Extending the HP-25C


What's been added in RPN-25 CE

For its price ($195 in 1975, dropped to $145 when the HP-25C was released at $200), the HP-25 was a remarkable calculator. It offered a large set of scientific functions as well as programmability. Most of all, it was affordable, unlike the previous HP-65 and HP-67.

RPN-25 CE enhances the HP-25C in several ways:



MEMORY

HP-25C

RPN-25 CE
Registers 8, R0..R7 100, split into R0..R9 and R.0..R.9 plus R20..R99
Register Arithmetic

For STO operations only
RCL ∑+ only

For both STO and RCL operations (R0..R.9).
• Includes double-register ∑+ (R7 and R4) working with stack registers X and Y, respectively.
Exchange X and Registers Not available Yes, directly or indirectly
Indirect Addressing Not available Yes, via any register (0..99), or any stack register
Stack Register Arithmetic Not available Yes, including LastX
     
FUNCTIONS    
GSB, RTN Not available Subroutine support (4 levels)
RND Not available Round X to displayed value
RAND Not available Create random number
DSE, ISG Not available Loop control using any register or any direct or indirect stack register
(see right column)
x! Not available Factorial (where x = any number except negative integers)
∑+, ∑– Handles n, ∑x, ∑y, ∑xy,∑x² Also stores ∑y² (in R8)
(see "Extra Functions" at right)
     
PROGRAMMING    
Program size 49 steps 99 steps
Insert step No Yes
Delete step No Yes, with DEL key
PRGM: current step
RUN: any range of steps
Auto-correcting branch targets No Yes, on inserting and deleting steps
Automatic LBL instructions No Turns NOPs targeted by GTO or GSB into LBL instructions
Program Looping Not available Yes, using ISG, DSE commands on any register
     
USER INTERFACE    
Prefix keys Active if pressed Active if pressed. Deactivated if pressed again. Indicators show state.
Register view Not available All registers shown on single screen including formatted display.
Run/Stop and single-step program without leaving register view.
Decimal Point,
Thousands separator

Fixed to decimal point
No thousands separator

Decimal point or comma
Separators optional
Command display

Not available

In program mode or while single-stepping, current command is shown as text below display
Current step display

Not available

Current program step number is shown below display
Program memory fill status

Not available

Red progress bar shows amount of program memory filled
Go to step 00

GTO 00, f PRGM (in RUN mode)

Same, plus: RTN, GTO.00 (works also in PRGM mode)
Pause length

1 second

1, 2, 5 seconds or ignore PAUSE instruction (in Settings.)
Any length up to a day using the extra function PSE LEN.
End pause

Not available

By tapping any key, but allow number input while pausing.
Clock display

Not available

By tapping f (12-hr) or g (24-hr), then the PRGM/RUN switch.
Mantissa (MANT)
see note below

Not available

Temporarily displays all 10 digits of the mantissa of the number in the X-register.
Sounds

Not available

100 sounds
Haptic feedback

Natively

Set by sending the value 1939010X to R0
(where X = 0..3 = level)

Mantissa Note
As described in this article, the mantissa function may also be enabled by a hardware hack.
CuVee Software advises against trying this on an iPhone.

Self-check
A self-check of RPN-25 CE may be performed by pressing STO ENTER.
All registers, the stack and the flags are cleared.



Vintage Features

For a closer "look-and-feel" of the real HP-25, you may send the value 19390104 to register R0.
This will have the following effects:
– The key legends ISG, RND and will not show, although the functions continue to work.
– A new program step overwrites the next step (no inserting).

To restore the default setting, send the value again.


Stack Display

– Turn on by swiping the display right
– Turn off by swiping the display left or by tapping it

      Getting data into RPN-25 CE
       
      You can preset RPN-25's registers with data created externally without having to type them in.
      Simply prepare the data in text format in any app that can handle text, like Notes, Mail and many others.
       
      The data format looks like this:
      Rn or R.n value (where n = 0…9)
       
      Example:
To set R1 = 4.5, R6 = 6.28E-7, R.3 = 439, prepare your data like this:
      R1 4.5
R6 6.28e-7
R.3 439
      Select all of the text and copy/paste.
       
      Notes:
Upper-/lower-case is ignored.
One or more blanks or tabs may follow the register number.
M may be used in place of R.
R.n may also be written as R1n, e.g. R.3 is the same as R13.
The order of the registers is irrelevant.
Unlisted registers are left untouched.


      Additional Functions
       
      RND
      Rounds x according to the currently shown digits.
       
      RAND
      x ≤ 0: replaces X with an integer random number in the range 0…232–1.
x > 0: replaces X with an integer random number less than x, but no larger than 232–1.

(For a random number 0 ≤ x < 1 see RAN# under Extra Functions.)
       
      GTO, GSB, RTN
      GTO nn
Continue program execution at step nn.
GSB nn
Continue program execution at step nn, storing step nn+1 on a 4-level stack.
RTN
Continue program execution at latest step stored by GSB.
If no return address is available, RTN is equivalent to GTO 00.

Up to 4 return addresses may be pending.
Step arguments nn of GTO and GSB are automatically adjusted when inserting or deleting steps.
       
      DSE, ISG
      The functions DSE (Decrement and Skip if Equal or Less) and ISG (Decrement and Skip if Greater) provide loop control by counting a value up or down, skipping the next step when a predetermined limit value has been reached.

The loop control value must be stored using this format:

                      nnnnn.xxxyy

The integer part nnnnn (up to 5 digits) is the counter value being decremented or incremented.
The fractional part xxx (exactly 3 digits) is the limit value being compared to the counter value.
The fractional part yy (exactly 2 digits) determines the amount by which the counter is incremented or decremented.

DSE decrements nnnnn by yy. If the result is equal to xxx (or less than xxx), the next step is skipped.
ISG increments nnnnn by yy. If the result is greater than xxx, the next step is skipped.

Note that xxx defaults to 000, while yy defaults to 1.


The keyboard commands ISG and DSE always use register R.9. No register address is required.


The DSZ command (Decrement and Skip if Zero) found in other calculators may be emulated by simply storing the counter value n and executing DSE.

Likewise for the ISZ command (Increment and Skip if Zero), but note that with ISG the condition is met when the counter value n is larger than (not equal) zero.

In both cases, the counter value is not restricted to 5 digits, but may be any integer handled by RPN-25 CE.
       
 
 

 

  Extra Functions


Extra Functions are functions and operations not available on the original HP-25.

They may not be entered from the calculator's keyboard.

Instead, they are put directly into a program in PRGM mode:

 

1. Go to the step after which the function should be inserted.

2. Triple-tap the display.
 

3. Find the desired function.

4. Double-tap to insert it. Or tap Insert.

➞ The previous content will be pushed down one step.


Alternatively, tap Replace to simply replace the current step.
 

The function is now part of the program.



List of Extra Functions

IMPORTANT NOTE
The default value for functions requiring an argument (like F? n or STO nn or RCL+N) is the x value currently displayed in RUN mode.
Only the positive integer part of x is taken, reduced to the valid range.
Once inside the Extra Functions list, you may change the value at will.

COMPARISONS
x>y  x>0  x≤y  x≤0
Executes the next step if the condition is true.
Otherwise the next step is ignored.
 

REGISTERS
STO nn
Store x directly in the register nn.
nn = 0..99
RCL nn
Recall directly to x the value in register nn.
nn = 0..99
x≷ nn
Exchange x with the value in register nn.
nn = 0..99
STi nn
Store x in the register defined by the value in register nn.
nn = 0..99 (also range of target register)
RCi nn
Recall from the register defined by the value in register nn.
nn = 0..99 (also range of target register)
xi≷ nn
Exchange x with the register defined by the value in register nn.
nn = 0..99 (also range of target register)
ISG nn
Increment the value in register nn by a given increment (default 1.) If the value becomes greater than a given limit (default 0), skip the next program step.
For more details, see the description in the right column of this page.
nn = 0..99
DSE nn
Decrement the value in register nn by a given increment (default 1.) If the value becomes equal to a given limit (default 0), skip the next program step.
For more details, see the description in the right column of this page.
nn = 0..99
P≷S
Swap primary registers R0..R9 with secondary registers R.0..R.9.
 
CLR ALL
Clear all registers R00..R99.
 
CLR EXT
Clear extended registers R20..R99.
Note: R00..R19 are cleared by the standard instruction f REG.
CLRGX
Clear a range of registers with an optional increment argument.
If register X contains bb.eeii, all registers from Rbb to Ree will be set to 0.
ii is the increment value. If larger than 1, only every iith register will be cleared.
If ii = 0 or not specified, it is set to 1.
Rbb is always cleared, irrespective of the other parameters.
Rbb may be larger than Ree.
REGCOPY
Copy a range of registers to a different location.
If register X contains ss.ddnn, then nn registers will be copied from Rss to Rdd.
Source and destination ranges may overlap.
The operation is stopped prematurely if either the source or the destination location exceeds R99.
REGSWAP
Swap the contents of two ranges of registers.
If register X contains ss.ddnn, then nn registers will be copied from Rss to Rdd.
The operation is stopped permaturely if either the source or the destination location exceeds R99.
REGS
Show the Register View (primary and secondary registers)
Note that you can run/stop or single-step a program in Register View.
(Tap the ? to see how.)
R.9 is shown formatted for easy identifying the loop control parts.
REGS ALL
Show the Extended Register View (registers R00..R99)
When the Extended Register View is already visible, executing REGS ALL will refresh the view.
You can run/stop a program in the Extended Register View.
STi (Imported from RPN-32 only. Use STi 09 instead.)
Store x indirectly in the register defined by the integer part of R.9 (range: 0..99).
Since R.9 is used as register address, looping through a range of registers is possible via the ISG and DSE commands.
After import from RPN-32, the instruction is automatically converted to STi 09.
RCi (Imported from RPN-32 only. Use RCi 09 instead.)
Recall indirectly to x the value in the register defined by the integer part of R.9 (range: 0..99).
Since R.9 is used as register address, looping through a range of registers is possible via the ISG and DSE commands.
After import from RPN-32, the instruction is automatically converted to RCi 09.
x≷i (Deprecated. Use xi≷ 09 instead.)
Exchange x indirectly with the value in the register defined by the integer part of R.9.
The accepted range is 0..99.

STACK OPERATIONS
R
Rolls the stack up
 
STO N  STO–N  STO+N  STO×N  STO÷N
RCL N  RCL–N  RCL+N  RCL×N  RCL÷N

Stack arithmetic between X and any stack register N, incl. LastX
(To specify N: see NOTE at the top of this table.)
N:  0 = LastX   1 = X   2 = Y   3 = Z   4 = T

Tip: RCL X duplicates x without disabling automatic stack lift (as opposed to ENTER).
STi N  STi–N  STi+N  STi×N  STi÷N
RCi N  RCi–N  RCi+N  RCi×N  RCi÷N

Indirect register arithmetic between X and any register addressed by stack register N, incl. LastX
(To specify N: see NOTE at the top of this table.)
N:  5 = LastX   6 = X   7 = Y   8 = Z   9 = T

Example: 25 π STi+Y would add π to the value in R25
ISG N
Increment the value in stack register N by a given increment (default 1.) If the value becomes greater than a given limit (default 0), skip the next program step.
For more details, see the description in the right column of this page.
(To specify N: see NOTE at the top of this table.)
N:  0 = LastX   1 = X   2 = Y   3 = Z   4 = T

Example: 25  STO Z  ISG Z would increment and test the value in Z
ISGi N
Increment the value in the register nn (0..99) defined by the value in stack register N by a given increment (default 1.) If the value becomes greater than a given limit (default 0), skip the next program step.
For more details, see the description in the right column of this page.
(To specify N: see NOTE at the top of this table.)
N:  5 = LastX   6 = X   7 = Y   8 = Z   9 = T

Example: 25  STO Z  ISGi Z would increment and test the value in R25
DSE N
Decrement the value in stack register N by a given increment (default 1.) If the value becomes equal to a given limit (default 0), skip the next program step.
For more details, see the description in the right column of this page.
(To specify N: see NOTE at the top of this table.)
N:  0 = LastX   1 = X   2 = Y   3 = Z   4 = T

Example: 25  STO Z  DSE Z would decrement and test the value in Z
DSEi N
Decrement the value in the register nn (0..99) defined by the value in stack register N by a given increment (default 1.) If the value becomes equal to a given limit (default 0), skip the next program step.
For more details, see the description in the right column of this page.
(To specify N: see NOTE at the top of this table.)

N:  5 = LastX   6 = X   7 = Y   8 = Z   9 = T

Example: 25  STO Z  DSEi Z would decrement and test the value in R25

x≷N
Swap x with any stack register N, incl. LastX
(To specify N: see NOTE at the top of this table.)
N:  0 = LastX   1 = X   2 = Y   3 = Z   4 = T

Example: x≷Z would swap x with the value in Z
xi≷N
Swap x indirectly with any register addressed by stack register N, incl. LastX
(To specify N: see NOTE at the top of this table.)
N:  5 = LastX   6 = X   7 = Y   8 = Z   9 = T

Example: 25  STO Z  xi≷Z would swap x with the value in R25
Y≷T
Swaps y and t
 
Y≷Z
Swaps y and z
 
Z≷T
Swaps z and t
 
XY≷ZT
Swap x,y with z,t.
 
XY→ZT
Copy x and y into Z and T, respectively.
 
Z→X
Brings z to X, keeping the other operands in the same order.
 
DELY
Removes y and lowers the part of the stack above X
 
REV STK
Reverses stack order
 
PUSH STK
Saves entire stack on a 4-level "stack of stacks"
 
POP STK
Copies the latest PUSHed stack to the regular stack and drops the "stack of stacks".
The oldest entry is copied down to level 3 (like T to Z on the regular stack.)
If the "stack of stack" is empty, POP STK clears the regular stack.
CLEAR REG removes all pushed stacks.

FLAGS
F? n
Executes the next step if flag n is set. n = 0..9.
Otherwise the next step is ignored.
To enter the command F? 7:
• In RUN mode enter the number 7.
• In PRGM mode select the F? n function.
• The function will appear as F? 7.
SF n
Sets flag n
To set flag 4:
• In RUN mode enter the number 4.
• In PRGM mode select the SF n function.
• The function will appear as SF 4.

Set flags appear as highlighted register numbers in Register View.
Note that F3 is automatically set when entering a number.
CF n
Clears flag n
To clear flag 1:
• In RUN mode enter the number 1.
• In PRGM mode select the CF n function.
• The function will appear as CF 1.
CFLAGS
Clears all flags F0…F9.
f REG or setting the power switch to OFF also clears all flags.
Note that flags F2 and F3 are automatically cleared on testing (F? 2, F? 3).

SYSTEM
BEEP
Notification sound
Recommended to signal that the program requires the user's attention.
DONE
Completion sound
Recommended to signal that a result is available.
OH-NO
Error sound
Recommended to signal an error or failure situation.
SND nn
Plays the sound ss stored in register nn.

ss: remainder of dividing the positive integer part of the stored value by 100.
Sounds 70..79: dial tones of keys 0..9, respectively. 80 = * key.
Sample program using R5 to play all sounds (set PAUSE to 2 secs):
01 CLR REG
02 RCL 5
03 SND 05
04 PAUSE
05 ISZ 05
06 GTO 02
SEC
Returns in x the number of seconds since midnight.
 
ERROR nn
Halts program execution and displays Error.

nn defines a status message shown below the display.
nn+10 accompanies the message with an error sound.
Available messages:
00 [empty]             05 x too small
01 x = 0 not allowed   06 x too large
02 y = 0 not allowed   07 |x| must be ≤ 1
03 x must be ≥ 0       08 x has become 0
04 x must be integer   09 Limit exceeded

UTILITIES
DECR
Decrements x by 1
Useful in tests like "IF condition = true THEN decrement x" since only one step is required
INCR
Increments x by 1
Useful in tests like "IF condition = true THEN increment x" since only one step is required
MIN
Compares x and y and puts the smaller value into X, the larger into Y
 
MAX
Compares x and y and puts the larger value into X, the smaller into Y
 
SIGN
Returns -1 if x < 0, 0 if x = 0, +1 if x > 0
 
ODD
Returns 1 if INT(x) is odd, 0 otherwise
 
DIV
Returns in X the integer value of y/x. The sign is the same as x.
 
MOD
Returns in X the remainder of y/x, in Y the remainder of y/x
 
RATIO
Converts x to a close rational y/x, with numerator and denominator limited to y (1E6 if y = 0 or non-integer).
y = 1000, x = π: RATIO = 355/113
y = 1E5, x = e: RATIO = 49171/18089
EXP/MANT
Returns in X the mantissa, in Y the exponent of x.
 
CHG MAG
Changes the magnitude of y by x: if y is positive, then x is added, otherwise subtracted from y.
y = 5, x = 3: CHG MAG = 8
y = -5, x = 3: CHG MAG = -8
CHOP
Returns 0 if the absolute value of x is less than 5E-10. Useful for eliminating floating-point representation errors.
 

HYPERBOLICS
SINH  COSH  TANH
Calculates the hyperbolic sine, cosine, or tangent.
sinh 3.2 = 12.25, cosh 3.2 = 12.29, tanh 3.2 = 1.00
SINH-1  COSH-1  TANH-1
Calculates the inverse hyperbolic sine, cosine, or tangent.
sinh-1 51.777 = 4.64, cosh-1 51.777 = 4.64 (x≥1), tanh-1 0.777 = 1.04 (-1<x<1)

STATISTICS
L.R.
Linear regression. Computes y-intercept and slope for the linear function approximated by x and y values accumulated using ∑+. The value of the y-intercept is placed in the X-register; the value of the slope is placed in the Y-register.
sinh 3.2 = 12.25, cosh 3.2 = 12.29, tanh 3.2 = 1.00
ŷ
Linear estimate. Computes estimated value of y for a given value of x.
sinh-1 51.777 = 4.64, cosh-1 51.777 = 4.64 (x≥1), tanh-1 0.777 = 1.04 (-1<x<1)

Linear estimate. Computes estimated value of x for a given value of y.
Exchanges R0..R3 with RS0..RS3.
x̅,y̅
Computes means (averages) of x and y values accumulated using ∑+.
Exchanges R4..R9 with RS4..RS9.
x̅w,s
Computes weighted mean and standard deviation of x values with frequency y accumulated using ∑+.
 
r
Correlation coefficient. Computes "goodness of fit" between the x and y values accumulated using ∑+ and the linear function which they approximate.
 
sx,sy
Computes standard deviations of x and y values accumulated using ∑+.
 
Q
Computes area under the standard normal distribution curve to the left of x.
 
Q-1
Computes x, given the area under the standard normal distribution curve to the left of x.
 
SWAP∑
Swap statistical values with locations used on RPN-32, and vice versa.

RPN-32

RPN-25

Statistics
R.0 R3 n
R.1 R7 ∑x
R.2 R6 ∑x²
R.3 R4 ∑y
R.4 R8 ∑y²
R.5 R5 ∑xy
P(y,x)
Permutations of y objects taken x at a time.
P(7,5) = 2520
P(y,x) = y!/(y-x)!
For very large but close values of x and y, the function LN(x!) may prove useful.
C(y,x)
Combinations of y objects taken x at a time (binomial coefficient.).
C(7,5) = 21
C(y,x) = y!/(x!(y-x)!)

MISCELLANEOUS
∆%
Percent difference between x and base y.
%∑
Percent that x is of ∑x (R7).
%MARKUP
Percentage to add to cost price to make a gross profit of x%.
To make a profit of 30%, what is the percentage of markup?
Answer: 42.86%
x
Cube root of x.
x = any positive or negative real number
TIME
24-hr time (hours, minutes, secs, 1/1000 secs)
To measure program execution time in secs.ms:
TIME  CHS  STO.8 {execute program}  TIME  RCL.8  H.MS+  EEX  4  ×
H.MS+
Adds hours, minutes, seconds, or degrees, minutes, seconds in Y-register to those in displayed X-register.
 
PSE LEN
Extended pause length. Sets pause length used by the PAUSE instruction to any value 0 < |x| ≤ 86,400 seconds. The value x = 0 restores the standard pause length defined in Settings.
Seconds remaining are shown in the status display.
If x < 0, the last 10 seconds are counted down with sound.
An extended pause in progress does not fade the PAUSE message.
The pause may be ended by pressing any key.
If ending the pause in a running program, the program stops.
Exceptions: number keys, decimal point, CHS, EEX. This allows inputting a number while pausing.
If the number input is followed by ENTER, a paused program will resume running.
LOGy
Logarithm of x to base y.
log7 5 = 0.8271
LN(x!)
Logarithm of x!, where 0 < x < 4.4673257•1097.
To divide 439 ! by 433 ! :
439 LN(x!) 433 LN(x!) - ex = 6.1965•1015
LN(1+x)
High-precision logarithm of x, where x is very close to 0.
With x = π•10-12:
"LN(1+x)" ➝ 3.141592654•10-12
1 + LN    ➝ 3.141709115•10-12
ex-1
High-precision antilog of x, where x is very close to 0.
With x = π•10-12:
"ex-1"    ➝ 3.141592654•10-12
ex 1 -    ➝ 0.000000000
ERF,ERFC
Returns in X the Gauss error function of x, in Y the complementary error function.
ERF(π/2)   = 0.9736789251
ERFC(π/2) = 0.02632107492
Bernoulli
Returns the xth Bernoulli number, where x = pos. integer 0 ≤ x ≤ 117.
Returns 0 if x is odd and > 1.
Returns -0.5 if x = 1 (by NIST convention)
Bernoulli(4) = -1/30 = -0.0333..., Bernoulli(10) = 5/66 = 0.075757576
BesselJ
Returns the Bessel function of the 1st kind of order y of x. [x ≥ 0 and y = pos. integer]
BesselJ(1,π) = 0.2846153432 (order 1)
BesselJ(3,π) = 0.3334583362 (order 3)
BesselY
Returns the Bessel function of the 2nd kind of order y of x. [x > 0 and y = pos. integer]
BesselY(1,π) = 0.3588729168 (order 1)
BesselY(3,π) = -0.4860704563 (order 3)
Zeta
Returns the Riemann zeta function ζ(x), where x ≥ -118.2893468
Returns overflow if x = 1, 0 if x = negative even integer.
ζ(2) = π2/6 = 1.6449, ζ(3) = 1.202056903 (Apéry's constant)
RAN#
Returns a random number 0 ≤ x < 1
 
FILL RAN#
Fills registers R0..R.8 with random numbers r in the range -x < r < +x. If x = 0, then x = 1.
x = 40:
Registers will be filled with random numbers from -39.9999.. to +39.9999..
GCD
(Highest Common Factor). Finds the largest positive integer which divides both positive integers x and y.
GCD(51,119) = 17
LCM
(Least Common Multiple). Finds the smallest positive integer that both positivie integers x and y can divide.
LCM(51,119) = 357
PRIME?
Determines if x is a prime number. If yes, flag 0 is set, otherwise flag 0 is cleared.
x integer and ≤ 4,294,967,295
Prime numbers: 4567, 78,901, 2038074743
Largest prime found: 4,294,967,291
Note that the state of flag 0 is shown in register view (0: highlighted if set)
QUAD/CUBE
Solves quadratic and cubic equations
Quadratic equation: ax² + bx + c = 0. Arguments: 0 in T, a in Z, b in Y, c in X
Returns: x,y = x₁,x₂ or u,v (if conjugate complex solution, u ± iv), z = discriminant
Cubic equation: ax³ + bx² + cx + d = 0. Arguments: a in T, b in Z, c in Y, d in X
Returns: x,y,z = x₁,x₂,x₃ or x₁,u,v (if type = 1)
t = type of roots (1: one real, two complex; 2: three real, at least two equal; 3: three real and distinct)
LIN EQ2
Solves system of linear equations in two unknowns:

ax + by = c
dx + ey = f
Input values:
a b c = R4 R5 R6
d e f = R1 R2 R3

Example:
7.32x - 9.08y = 3.14
12.39x + 7y = 0.05

Solutions: x = 0.14, y = -0.24, Det = z = 163.74
LIN EQ3
Solves system of linear equations in three unknowns:

a11x+a12y+a13z = b1
a21x+a22y+a23z = b2
a31x+a32y+a33z = b3
Input values:
a11 a12 a13 = R7  R8  R9
a21 a22 a23 = R4  R5  R6
a31 a32 a33 = R1  R2  R3
b1  b2  b3 = R.1 R.2 R.3

Example:
3.14x + 10.02y - 7z = 1
0.25x + 30.3y - 9.1z = 2
-3.5x + 27.4y + 8z = 3

Solutions:
x = 0.29, y = 0.11, z = 0.14, Det = t = 1052.86

COMPLEX NUMBERS
c_+
Complex add z+it to x+iy
 
c_-
Complex subtract x+iy from z+it
 
c_×
Complex multiply x+iy by z+it
 
c_÷
Complex divide z+it by x+iy
 
c_ENTER
Copy x+iy to z+it
 
c_CHS
Complex change sign of x+iy
 
c_x≷y
Exchange x+iy with z+it
 
c_R↓
Complex roll down
 
c_STO n
Complex store x+iy in Rn (n = 0..9)
To enter the command c_STO 2:
• In RUN mode enter the number 2.
• In PRGM mode select the c_STO n function.
• The function will appear as c_STO 2.
c_RCL n
Complex recall x+iy from Rn (n = 0..9)
To enter the command c_RCL 5:
• In RUN mode enter the number 5.
• In PRGM mode select the c_RCL n function.
• The function will appear as c_RCL 5.
c_LASTx
Complex retrieve x+iy from LastX
 
c_ABS
Complex absolute value of x+iy
|3+4i| = 5.00
c_RND
Complex round to display x+iy
 
c_LN
Complex ln(x+iy)
ln(i) = 1.57i
c_ex
Complex ex+iy
e1.57i = 1.00i
c_LOG
Complex log(x+iy)
log(i) = 0.6822i = π/(2·ln(10)i
c_10x
Complex 10x+iy

101.57i = -0.89 -0.46i

c_LOGz
Complex log(x+iy) to complex base (z+it)
log(1+i)(1.49+4.13i) = 2.00-1.00i
c_yx
Complex (z+it)x+iy (where z+it ≠ 0)
(1+i)2 - i = 1.49+4.13i
c_1/x
Complex reciprocal of (x+iy)
1/(2+3i) = 0.15-0.23i
c_√x
Complex square root of (x+iy)
√(7+6i) = ±(2.85+1.05i)
c_x2
Complex square of (x+iy)
√(7-2i) = 45.00-28.00i
c_x!
Complex factorial of (x+iy) = Γ(x+1 + iy)
(7-2i)! = -2368.80+3064.87i
Note: (7-2i)! = Γ(7+1-2i) = Γ(8-2i)
c_SIN, c_COS, c_TAN
Complex sine, cosine, tangent of (x+iy). All angles in radians.
sin(2+3i) = 9.15-4.17i
cos(2+3i) = -4.19-9.11i
tan(2+3i) = -0.004+1.003i
c_SIN-1, c_COS-1, c_TAN-1
Complex arc sine, arc cosine, arc tangent of (x+iy)
sin-1(5+8i) = 0.56-2.94i
cos-1(5+8i) = 1.01-2.94i
tan-1(5+8i) = 1.51+0.09i
c_SINH, c_COSH, c_TANH
Complex hyperbolic sine, cosine, tangent of (x+iy)
sinh(3-2i) =-4.17-9.15i
cosh(1+2i) = -0.64+1.07i
tanh(1+2i) = 1.17-0.24i
c_SINH-1, c_COSH-1, c_TANH-1
Complex inverse hyperbolic sine, cosine, tangent of (x+iy)
sinh-1(8-5i) = 2.94-0.56i
cosh-1(5+8i) = 2.94+1.01i
tanh-1(8-5i) = 0.09-1.51i

CONVERSIONS
→RAD    →DEG
Converts decimal degrees to radians, and vice versa
 
→in    →mm
Converts millimeters to inches, and vice versa
 
→ft.in    →cm
Converts centimeters to feet and inches, and vice versa. Use 2 digits to indicate inches after the decimal point.
164 cm = 5.0457 = 5'4.57"
5'5" = 5.05' = 165.10 cm
→ft    →m
Converts meters to feet, and vice versa
 
→ac    →m2
Converts square meters to acres, and vice versa
 
→°F    →°C
Converts degrees Celsius to degrees Fahrenheit, and vice versa
0°C = 32°F, 100°C = 212°F, 37°C = 98.6°F
-460°F = -273.33°C, -40°F = -40°C
→oz    →g
Converts grams to ounces, and vice versa
 
→lbm    →kg
Converts kilograms to pounds (mass), and vice versa
 
→gal    →ltr
Converts liters to gallons, and vice versa
20 ltr = 5.28 gal
61.55 gal = 232.99 ltr
→cup    →dl
Converts deciliters to cups (US), and vice versa
2 dl = 0.85 cups
1.5 cups = 3.55 dl
→tbs    →g (H2O)
Converts grams (water) to tablespoons, and vice versa
15 g = 1.01 tbs
6 tbs = 88.72 g
→bbl    →liter
Converts liters to barrels (US, oil), and vice versa
500 ltr = 3.14 bbl
1 bbl = 158.99 ltr
gas US    gas UK
Express miles per gallon as liters per 100 km, and vice versa. Select US or UK units.
8.4 ltr per 100 km ⇄ 28.00 mpg (US), 28 ltr per 100 km ⇄ 8.4 mpg (US)
8.4 ltr per 100 km ⇄ 33.63 mpg (UK), 33.63 ltr per 100 km ⇄ 8.4 mpg (UK)
 
 


Copyright © 2020. All rights reserved.
Apple and the Apple logo are trademarks of Apple Inc., registered in the U.S. and other countries. iPad is a trademark of Apple Inc.