« 【プチコンmkII】WAITを使った簡単なタイマ | メイン | 【九州号】西日本車体工業解散後の車輌 »

2012-05-03

【プチコンmkII】固定小数点

 ニンテンドーDSi、3DS用ダウンロードソフト《プチコンmkII》。かつての8ビットパソコンBASICを思い出させるような、BASIC言語である。
 この言語《32ビット固定小数》で演算する仕様となっている。整数だけで表すと、

 -2,147,483,648≦0≦2,147,483,647 の範囲を表せるが、三角関数、対数命令もあるため、それでは具合が悪い。

 そこで4096を1.0と見なす仕様にした。これなら、小数点第3位まで表示するためにプチコン内での1を1/4096=2.44140625^10の-4乗にして第4位を四捨五入すれば解決。この数16進数で表せば1000(H)で切りもいい。
 浮動小数点にするより高速で計算できる。ゲーム向きと言えよう。実際に小数を伴う計算させると小数点第3位までしかもそれを四捨五入している。電卓で表現するとこんな感じか。

Ds120tw0

 プチコンに7の逆数を求めるためにPRINT 1/7と入れると0.143と帰ってくる。電卓で再現するにな、スイッチを四捨五入。小数点を下3桁まで表示にあわせて計算すればよい。

Ds120tw1

 お金の計算などにどのように対応させるか考えていこう。50万円までなら標準仕様でも十分に事足りる。数値の扱いが固定小数点のために、また、ゲームを作る専用言語だと思いこんでしまい、事務計算に使おうだなんて考えるのも無理な話。
 100円ショップでも売っている一般的な8桁電卓をプチコンの備わっている命令で可能か考えてみたい。

 プチコン関連記事は、こちらでも連載中です。