Trident Help

RPN Scientific 15 manual · Chapter 7 of 12

Storage registers

The 20 numbered registers and the I register, STO and RCL, register arithmetic, exchanging X with a register, indirect addressing and clearing memory.

7.1What the storage registers are#

Besides the stack, there are 20 storage registers for numbers you need to keep: R0 to R9 and R.0 to R.9 (press the point and then the digit). A separate register, I, is used for indirect addressing and counting in programs.

Registers R2 to R7 are also used by the statistics keys (see Statistics). If you do not use statistics, you can use all the registers as you like. Registers keep their values until you overwrite them or clear them.

7.2Store a value in a register and bring it back#

Press STO and then a register: a digit, or the point and a digit. The number in X is copied into the register and X stays as it is. Press RCL and the register to bring a copy back into X. Recalling lifts the stack, like typing a number.

Example 7.1

Store and recall a number

  1. Key in 3 and press STO 5. Clear X by keying in 0, then press RCL 5.

    3STO50RCL5
Result of the example "Store and recall a number" The display shows:  0.0000 /  3.0000 /  0.0000 /  3.0000.
You should see3.0000
Example 7.2

Use a point register

  1. Key in 7, press STO . 1, key in 0, then RCL . 1.

    7STO.10RCL.1
Result of the example "Use a point register" The display shows:  0.0000 /  7.0000 /  0.0000 /  7.0000.
You should see7.0000
  1. X = 3
  2. STO 5
  3. R5 = 3
  4. RCL 5
  5. X = 3
Store and recall.

7.3Do arithmetic in a register#

After STO you can press +, −, × or ÷ and then the register. The register is updated with its own value combined with X: STO + n adds X to the register, STO − n subtracts X from it, and so on. X does not change.

Example 7.3

Subtract from a register: STO −

  1. Store 8 in R1. Key in 3, then STO − 1, and recall R1.

    8STO13STO−1RCL1
Result of the example "Subtract from a register: STO −" The display shows:  0.0000 /  8.0000 /  3.0000 /  5.0000.
You should seeR1 becomes 8 − 3 = 5.0000.
Example 7.4

Multiply a register: STO ×

  1. Store 2 in R1. Key in 5, press STO × 1 and recall R1.

    2STO15STO×1RCL1
Result of the example "Multiply a register: STO ×" The display shows:  0.0000 /  2.0000 /  5.0000 /  10.0000.
You should see10.0000

RCL works the same way in the other direction. RCL + n adds the register to X. RCL − n subtracts it from X, RCL × n multiplies and RCL ÷ n divides. The result is placed in X without lifting the stack.

Example 7.5

Add a register to X: RCL +

  1. Store 2 in R1. Key in 5, press RCL + 1.

    2STO15RCL+1
Result of the example "Add a register to X: RCL +" The display shows:  0.0000 /  0.0000 /  2.0000 /  7.0000.
You should see7.0000
KeysEffect
STO + nRn←Rn+XR_n \leftarrow R_n + X
STO − nRn←Rn−XR_n \leftarrow R_n - X
STO × nRn←Rn×XR_n \leftarrow R_n \times X
STO ÷ nRn←Rn÷XR_n \leftarrow R_n \div X
RCL + nX←X+RnX \leftarrow X + R_n
RCL − nX←X−RnX \leftarrow X - R_n
RCL × nX←X×RnX \leftarrow X \times R_n
RCL ÷ nX←X÷RnX \leftarrow X \div R_n

7.4Swap X with a register#

fx⇄4 (x⇄) swaps X with the register you name. The register gets the old X, and X gets the register value.

Example 7.6

Exchange X and R3

  1. Key in 5 and press STO 3. Key in 9 and press f, x⇄, then 3.

    5STO39fx⇄43
Result of the example "Exchange X and R3" The display shows:  0.0000 /  0.0000 /  5.0000 /  5.0000.
You should seeX is now 5 (the old R3). R3 holds 9.

7.5Indirect addressing with I and (i)#

The I register holds a number you can use to choose another register. After STO or RCL, press COS for (i) to use the register whose number is in I. If I holds 5, then STO (i) stores in R5 and RCL (i) recalls R5. The number in I is cut to a whole number. If it is outside 0 to 19, you get Error 3.

Press TAN instead of a digit to work with the I register itself, for example STO I and RCL I.

Example 7.7

Store through I

  1. Store 5 in I. Key in 99, STO (i), key in 0, and recall R5.

    5STOTAN99STOCOS0RCL5
Result of the example "Store through I" The display shows:  5.0000 /  99.0000 /  0.0000 /  99.0000.
You should seeThe 99 went into R5.
Example 7.8

Recall through I

  1. Store 99 in R5 and 5 in I. Key in 0 and press RCL (i).

    99STO55STOTAN0RCLCOS
Result of the example "Recall through I" The display shows:  99.0000 /  5.0000 /  0.0000 /  99.0000.
You should see99.0000

7.6Clear the registers#

fCLR REGx⇄y (CLEAR REG) sets all 20 registers and I to zero. It does not touch the stack, the flags or the program. fCLR ΣGSB (CLEAR Σ) clears the statistics registers R2 to R7 and the stack.

Example 7.9

Clear all registers

  1. Store 4 in R1, press f, CLEAR REG, then recall R1.

    4STO1fCLR REGx⇄yRCL1
Result of the example "Clear all registers" The display shows:  0.0000 /  0.0000 /  4.0000 /  0.0000.
You should see0.0000

7.7How many program lines are used#

gMEMRCL (MEM) shows how many lines of program memory are in use, in the form P-nnn. The maximum is 448 lines.

Example 7.10

Check program memory

  1. Press g, MEM on a fresh calculator.

    gMEMRCL
Result of the example "Check program memory" The display shows:  P-000 /  0.0000 /  0.0000 /  0.0000 /  0.0000.
You should seeP-000
MEM shows the number of program lines in use. The display shows:  P-000 /  0.0000 /  0.0000 /  0.0000 /  0.0000.
MEM shows the number of program lines in use.

HP-15C is a trademark of HP Inc.. Trident Calculator is an independent product by South View Studios and is not affiliated with, sponsored by or endorsed by HP. The name is used only to describe the kind of calculator this model resembles; Trident's names, keys, display, fonts and software are its own clean-room design.