|
こんばんわ〜
また先週一週間使っていたのですが、全然おかしかったです。
とにかくスタックの動作が微妙におかしく、XとYの計算はうまくいくのですが、少し複雑になると計算できなくなってしまう始末です。自分にはやはりプログラムを作る才能はないなと再認識します。
整理すると以下のようなルールになるかと。。。
・数字を入力してENTERキーを押した直後のXは次の数字の入力の時に破棄される
私が保有している32SIIの動きを真似したつもりですうまく表現できているでしょうか?
いちばんしたからX、Y、Z、Tと呼びます。
1.Xの入力後はXが無効(?)な値になります。
入力中は以下のような状態になります。
T:1
Z:2
Y:3
X:4_
ENTERキーを押して4を確定させると
T:2
Z:3
Y:4
X:4
です。
次に何か数字を入力すると、一番したのXはなくなって、そのまま入力が始まります。
5と入力してみましょう。
T:2
Z:3
Y:4
X:5_
です。先ほどXに合った値は消えて5の入力が始まります。
新しく数字を入力して、確定したあとはXは無効な数字(?)となって次なる入力のときは、Xは破棄されます。
これがうまく表現できておらず、スタックが一段上がってしまっていました。
2.演算などの後は先ほどのXが有効になります。
演算は結果がXに入っているので当然といえば当然ですが、特にわかりにくいのがSWAPやRollDownです。
先ほどと同様に、1,2,3,4と入力して最後にENTERキーを押した状態にします。
T:2
Z:3
Y:4
X:4
この状態で先ほど数字を入力したときは、Xの4は消えてなくなりましたが、SWAPキーを押してX,Yを入れ替えた後は、Xが有効な値になります。
見た目同じですが、SWAPキーを押したら以下のようになります。
T:2
Z:3
Y:4
X:4
この後に5を入力すると先ほどとは異なり、Xの4の値が残って5の入力が開始されます。
5を入力してみます。
T:3
Z:4
Y:4
X:5_
となります。
RollDownを4回押してはじめと同じ状態にしても同様です。
T:2
Z:3
Y:4
X:4
5を入力すると
T:3
Z:4
Y:4
X:5_
となります。
普段何気なく使っていたのですが、いろいろと考えられた動きになっているのですね。
長年の歴史を感じます。
|

- >
- コンピュータとインターネット
- >
- コンピュータ
- >
- その他コンピュータ



こんばんは。
XレジスタはENTERを押すと,Yに移動するので,Tレジスタは消えてしまいます。
4つのスタックを使うときは,XレジスタはENTERを押さない状態だと思いますよ。これなら,X⇔Y変換も綺麗にできますし。。。
(HPの電卓 15Cを使ってのことです。)
2012/11/15(木) 午後 6:08 [ けんけん ]
けんけんさんこんばんわ〜
ENTERを押すまでの入力中の状態がXレジスタということ。。。でしょうか。。?やばいまたわからなくなってきました。。
今できているものもできるだけ使ってみて入るのですが、今のところおかしい感じはないと思うのですが、正しいかどうかといわれると自信がないです。。
2012/11/17(土) 午後 10:37 [ ささき ]