## Thursday, June 8, 2017

### HP 20S and HP 21S: RPN Arithmetic Simulator

HP 20S and HP 21S:  RPN Arithmetic Simulator

This program will allow the user to simulate RPN (Reverse Polish Notation) for five arithmetic functions: addition, subtraction, multiplication, division, and exponentiation (power).  All operations take the form of enter Y, press [INPUT], enter X, [XEQ] (appropriate key).

Labels:
XEQ A:  Y + X
XEQ B:  Y – X
XEQ C:  Y * X
XEQ D:  Y/X
XEQ E:  Y^X
XEQ F:  “clears” the stack.

The result shown in the display while the X value is left in the hidden display, which can be accessed by pressing [ LS ] (SWAP).

The key codes for the HP 20S and HP 21S are the same.

 STEP CODE KEY 01 61, 41, A LBL A 02 21, 0 STO 0 03 51, 31 SWAP 04 21, 75, 0 STO+ 0 05 22, 0 RCL 0 06 61, 26 RTN 07 61, 41, B LBL B 08 21, 0 STO 0 09 51, 31 SWAP 10 21, 65, 0 STO- 0 11 22, 0 RCL 0 12 32 +/- 13 21, 0 STO 0 14 61, 26 RTN 15 61, 41, C LBL C 16 21, 0 STO 0 17 51, 31 SWAP 18 21, 55, 0 STO* 0 19 22, 0 RCL 0 20 61, 26 RTN 21 61, 41, D LBL D 22 21, 0 STO 0 23 51, 31 SWAP 24 21, 45, 0 STO÷ 0 25 22, 0 RCL 0 26 15 1/X 27 21, 0 STO 0 28 61, 26 RTN 29 61, 41, E LBL E 30 21, 0 STO 0 31 51, 31 SWAP 32 14 y^x 33 22, 0 RCL 0 34 74 = 35 21, 0 STO 0 36 21, 26 RTN 37 61, 41, F LBL F 38 71 Clear 39 71 Clear 40 61, 26 RTN

Example:

In the following examples, 8 will be stored in the hidden register.

7 + 8:  7, INPUT, 8, XEQ A.   Result: 15
7 – 8:  7, INPUT, 8, XEQ B.   Result: -1
7 * 8:  7, INPUT, 8, XEQ C.   Result: 56
7/8:  7, INPUT, 8, XEQ D.  Result: 0.375
7^8:  7, INPUT, 8, XEQ E.  Result:  5,764,801

Eddie

This blog is property of Edward Shore, 2017