HP 32SII RPN関数電卓の使用法覚書

現在時間のあるときに作業を進めているので、まだ基本的な内容しか網羅していません。ご了承ください。

※このページの内容は個人的に32SIIの英文マニュアルを翻訳したうえで主だった内容を覚書風にまとめて 公開しています。
必ずしも正確でない表現等あると思います。ご覧になる方は個人の責任においてご利用ください。

目次----
使用始め
スタック
変数
単位変換
基数変換と計算
プログラミング


**********使用始め**********
1-1
■電卓のON、OFF
[C]キーを押すことによって電源が入ります。下に[ON]と書かれているキーです。
電卓を切る場合は[青い右矢印キー(今後は右シフトと言う)]を押したあと[C]キーを押す。[C]キーには上に青い文字で[OFF]と書いてあります。 電源をオフにした以降も、あなたの蓄えた情報には影響なくメモリーは継続されます。
(左シフト+[OFF]でも電源はオフに出来ます)

■ディスプレイのコントラストを合わせます。
[C]キーを押したまま、[+],[-]でディスプレイのコントラストを調整できます。

1-2
■シフトキー
キーにはそれぞれ3つのファンクション、表面の文字、左シフト用オレンジ文字、右シフト用青文字があります。適切なシフトキーを事前に押すことによって、キーの機能を要求できます。 例えば、電源を切るには右シフトと[C]を押すように。
左右のシフトキーを押すとディスプレイの上方に、シフトキーが押されていることを 告知するマークが表示され、その告知は次のキーが押されるまで残ります。 シフトをキャンセルするには同じシフトボタンをもう一度押してください。

■アルファキー
ほとんどのキーには脇にアルファベットが書かれています。
あなたがアルファベットをタイプする必要がある時は、ディスプレイにA~Zの文字が 現れます。
それはアルファキーがアクティブになっていることを示しています。

1-18
■12桁の表示を見る
全ての数字は内部的に常に桁数を12持っています。 [SHOW](右シフト+[ENTER])を押している間、その場で表示されていない12桁までの数字を見ることが出来ます。

1-21
■メモリー
HP32SIIには、各種データを収めることができる384バイトのメモリーがあります。

□使用可能なメモリー
[左シフト] + [MEM(Memory)] を押す。
ディスプレイには

216.0 VAR PGM などと出ます。

これは、「216バイト分のメモリーが使用可能」という意味です。 {VAR}を選ぶと変数について、{PGM}を選ぶとプログラム使用容量について見ることが出来ます。

□{VAR}
いくつかの変数が定義されている場合、左シフト+[▲],[▼]で内容を見ることができます。 このとき、
[SHOW]キーで、12桁表示
[ENTER]で見ていた変数内容をXレジスタに、
[CLEAR]でディスプレイ上の内容を消すことができます。
[CLEAR],{VAR}で全ての変数の内容を消すことができます。
[C]で項目から抜けます。

**********スタック**********
2-1
■スタックについて
T
Z
Y
X
32SIIでは計算の中間結果を4つの場所にスタックします。
上からT(TOP),Y,Z,X と呼ばれ、Tが一番古いもの、Xが最新・ディスプレイ上で見ることが出来る領域です。
内容は新しいものが[X]にはいり、その後Z→Y→Tと順に送られていきます。
その内容は[R↓],[R↑]キーでそれぞれロールダウン、アップすることにより確認できます。

※逆ポーランド表記(RPN)とスタックについては、株式会社エス・ワイ・シーのページ上からリンクされている田中氏のページに詳しく説明されています。

2-4
■X,Yレジスタのスタック内容の交換
[ENTER]の横の[x-y]キーを押すことによってXとYレジスタの内容を他に影響を与えず交換します。もう一度押すともとに戻ります。
[x-y]キーは数値の順番を置き換えて計算する場合などに使用します。

【例1】
18/(2*3) といった計算の場合キー入力は
[2][ENTER][3][*][18][x-y][/]
答えは[3]。

[18]と入力してXレジスタに入った[18]を、先に計算してYレジスタに入った(2*3)の答え[6]を入れ替えて計算しています。

2-9
■LAST X レジスター
直前の数値演算操作前にXレジスタに入っていた内容を[LAST x]([左シフト]+[ENTER])を押すことによって呼び戻します。

**********変数**********
文字変数に数字を代入することによって、変数をそのまま計算に活用します。
3-2
■数字をストア&呼び出す
[STO](Store)と[RCL](Recall)キーを使用して、数字を文字変数にストア、呼び出しが出来ます。
[VIEW]キー(右シフト+[0])でストアした内容を見ることが出来ます。

【例1】
Xレジスタにある数字[12]を文字変数[A]にストアする。
ディスプレイには[12]の文字。[STO]キーを押す。

文字変数[A]にストアした数字を呼び出す。
[RCL]キーを押し、そのあと[A]

文字変数[A]の内容を見る。
[VIEW]キーを押し、そのあと[A]

変数内容は[MEM]で見ることが出来ます。詳しくは上記「1-21/メモリー」で。

**********単位変換**********
時間、角度、その他単位の変換です。
4-11
■時間変換のやり方
1,変換したい数値を10進フォームか分、1時間単位で入力
2,[HR](左シフト+[5]/10進の時に変換)か[HMS](右シフト+[5]/1時間単位へ変換)を押す。

■角度変換のやり方
1,変換したい数値(ラジアンか度)を入力
2,
入力した度をラジアンへ変換[RAD]
入力したラジアンを度に変換[DEG]

4-12
■その他単位変換のやり方
入力単位 この単位に変換 キー入力
pound kg [数値],[→kg]
kg pound [数値],[→lb]
°F [数値],[→℃]
°F [数値],[→°F]
inch cm [数値],[→cm]
cm inch [数値],[→in]
gallons liters [数値],[→l]
liters gallons [数値],[→gal]

6-21
■チェックサム

**********基数変換と計算**********
10-1
■基数メニュー
メニューラベル 説明
{DEC} 10進数・Decimal,デシマル
{HX} 16進数・Hexadecimal,ヘキサ
{OC} 8進数・Octal,オクタル
{BN} 2進数・Binary,バイナリ

□各基数をベースにする
1,[BASE](左シフト+[x])キーを押す。
2,ベースにしたい基数を選ぶ。

□基数の変換
【例】16進数で20を、10進数に変換。

1,[BASE](左シフト+[x])キーを押す。
2,{HEX}を選ぶ。
3,{20}と入力
4,[BASE](左シフト+[x])キーを押す。
5,{DEC}を選ぶ。

変換結果 =32

**********プログラミング**********
簡単なプログラムを作ってみます。
12-1
■公式をプログラム化
【例】アメリカに旅行に行った際、20ドルのハンドバッグがあり、その値段を1ドル=107円で日本円に計算するとします。

32SIIに入力するとしたらこんな感じでしょうか。
20[ENTER]107[x]
結果は2140円と出ました。

これは簡単な計算ですが、このまま買い物を続ける際毎度電卓に入力するのは大変です(暗算でいいじゃん、というのはこの場はナシ)。 ではこれを32SIIでプログラム化してみます。

キー入力 ディスプレイ上 説明
[PRGM]   プログラムエントリーモード、ディスプレイに[PRGM]の表示有
[GTO][.][.] PRGM TOP プログラムポインターをリセット、[GTO]は[Go to]のこと。
107 001 107 1ドルの円相場を入力
x 002 x 演算子入力
[PRGM]   プログラムエントリーモードから抜ける

30ドルのキルトが売っています。プログラムを使って日本円でいくらか見てみましょう。

[GTO][.][.]
これで今作ったプログラムがスタンバイしました。

30[R/S] と入力
結果 =3210 と出ました。

12-3
■プログラムの境界線
もし、あなたがもっとメモリにプログラムを作っておきたいと思った場合、プログラムの始まりと終わりにラベルをつけなくてはいけません。

例)
始まり(A01 LBL A),終わり(A05 RTN)など。

■プログラムラベル
プログラムルーティンのスタート部分にラベルを貼ります。

[LBL]+[ラベルにする文字を入力]

このラベルは必要とするプログラムを明確に実行するのに必要となります。ラベル名はA〜Zの一文字が使用できます。文字は変数としても使われます。ラベル名は既に使用されているラベルと同名にすることはできません(DUPLICAT.LBLと警告)が、変数として使用されている文字は重複可能です。

■プログラムラインナンバー
A01のようにラインナンバーの頭にはラベルの文字がつきます。
もし1つのラベルのルーティンが99ラインを超えた場合、残りの数字の変わりにデシマルのポイント[.]が現れます。例えば、ライン数101のラベルAは{A.01}のように。
更に199ラインを超えた場合、コンマ[,]が使われます。例、ライン数201のラベルBは{B,01}

12-4
■プログラムの終わり
プログラムやサブルーティンの終わりには「戻り」のマークを入れます。

[RTN](Return)

このマークがついていると、プログラムが終了した際にプログラムメモリトップ[PRGM TOP]に戻ります。

12-12
■データの入力[INPUT]
[INPUT]は走っているプログラムを停め、与えられた変数をディスプレイ(Xレジスタ)に引渡す命令です。
このコマンドを実行させると
Q?0.0000

などと、表示されます。左の[Q]は変数名、右の[0.0000]は現在その変数に代入されている内容です。
現在、変数[Q]には[0.0000]が代入されています。

ここで数値[2]を入力します。打ちこんだら、入力終了として[R/S]、これで再びプログラムが走り始めます。もしあなたが数値を入力しなかった場合は、Xレジスタの変数内容をそのまま保持します。

【例】このような入力した半径から円周率を求めるプログラムを作ってみます。
A01 LBL A
A02 INPUT Q
A03 x2
A04 π
A05 x
A06 RTN

このプログラムを初めて動かすとまず変数Qの内容は[0.0000]だと表示され、入力を求められます。
[2]と入力してみます。
[2][R/S]
円周率が答えとして表示されます。

続けて再びこのプログラムを動かす場合、変数Qには前回入力した数字[2]が既に入っていると表示されます。新たな数値を代入したい場合はその数値を入力してください。(その新しい数値が[2]に変わりに代入されます。

※もし続けて実行する場合、変数Qに前回の数値が入っているのがいやだ!という几帳面な方(こんな人いないでしょうか)は上記プログラムの下部をこのようにしたらいかがでしょう。



A05 x
A06 0 --------(Xレジスタにむりやり0を入れます)
A07 [STO][Q]--(それを変数Qに入れてしまいます)
A08 RTN

コードが意味なく長くなるだけですが、一応・・。
余談でした。

13-2
■サブルーティンを呼び出す(XEQ,RTN)
コマンド
[XEQ]--サブルーティンを呼び出します。
[STO]--サブルーティンから戻る場所にマーク。
[LBL]--呼び出されたサブルーティンは、プログラムトップのラベルから始まります。
[GTO]--GOTO,同じプログラム内でマークされているところに飛びます。

【例】

メインプログラムC
行数 内容 説明
C01 LBL D Dというプログラムはここから始まります。
C02 INPUT X -
C03 XEQ R サブルーティンRを呼び出します。
C04 STO R サブルーティンRからここに帰ってきます。
C05 VIEW R -
C06 GTO C プログラムCのTOPに戻り、再度実行

サブルーティンR
行数 内容 説明
R01 LBL R Rというサブルーティンはここから始まります。
R RTN プログラムCに戻ります。


【用語】
[MEM](Memor/メモリー)
{VAR}(Variables/変数)
{PGM}(Programs/プログラム)

TOPへ戻る