電卓

 MSVistaにちなんで1毘素陀(びすだ)まで正確に演算できる電卓を作ろうと思うのですが、これが中々な難しいです。
 ちなみに1毘素陀=10^14680064です。知らない人は参考にしてください。
*参考リンクhttp://www.sf.airnet.ne.jp/~ts/language/largenumber.html
 で、これは2進数にすると48766118桁必要です・・・多倍長を使ってもものすごくめんどうです。なのでとりあえず1無量大数(=10^68)までで我慢しておきましょう。これなら桁も225桁で済みます。
 真偽値型の変数226個の配列にして一つの型をして宣言すればとりあえず1無量大数まで表現できる変数になります。和演算・差演算は単にそれぞれの桁の和や差を出せばよいので簡単にできます。積演算は和演算の応用でできそうです。商演算は自然数同士の演算ならできそうです。実数での商演算ができるようにするためには補数表現されている数を絶対値表現に直せば、まあなんとかいけそうです。でもこれは効率悪そうでいやですね。何かいい方法があればいいのですが・・・
 さて、一番の問題は10進数→2進数や2進数→10進数の変換方法がイマイチいいのが浮かばないんですよね。文字列を一時的に数値に変換して局所的に計算して変換するしか方法はないんでしょうか?これが解決できればなんとか実装できそうですが・・・10進数変換をしなくてもいいならめちゃくちゃ楽なんですけどね