なので桁上りを行うための怪しいコードを書いてみる。
1000*0+100*12+10*9+11*1を1*1000+100*3+10*0+1*1に直す感じ。
1バイト一桁で4桁使用。
ノートの上で試行錯誤すること1時間半なんかこのコードを書いただけで疲れた。
使用済みメモリ領域のごみ処理がちゃんとできてるかは不明。
計算結果が0になる場合も表示できるように修正。
明日はフィボナッチ数の数列を行う処理を記述予定。
最初の
+
[-
から相対メモリ位置が決まる、その手前はテスト用の値設定。
計算に使用する範囲は
4桁をabcdとして
相対メモリは
0 ,,,1,,,2,,,3,,,4,,,5
-1,,a,,,b,,,c,,,d,-1
その後ろ7バイト計算用で確保。
計算終了時に0と5を-1、-1に戻している。
初めて使うときは0と5を-1にしてから使用すること。
相対メモリ位置4から処理に入り相対メモリ位置0で処理が終了する。
後日の保守はドキュメントなしでは不可能。
ここから先はとある理由で、10月6日になるまでは公開できない。
- -
- >
- >
- >
- +
- >
- +
- >-<
- +
- [-
- >>>>>>++++++++++<<<<<<
- [->>>>>>>>+<<-
- [<<<<<<<-
- >>>>>>>>>
- ++++++++++
- <]
- <[<]
- <<<<<<+
- >>>>>>>>>----------
- <<<<<<<<
- ]
- >>>>>>>>[-<<<<<<<<+>>>>>>>>]
- <<<<<<<<
- >>>>>[-]
- >++++++++++++++++++++[-]
- >[-]
- >[-]
- <<<<<<<<<+
- ]
- >[<]>[<]>[<]
- >+
- [-
- ++++++++++++
- ++++++++++++
- ++++++++++++
- ++++++++++++
- .
- ------------
- ------------
- ------------
- ------------
- >+
- ]
- -
- <<<<-
0 件のコメント:
コメントを投稿