VAL()関数も32ビットを越えた2進数文字列を変換させると0になっちゃうんですね。 倍精度実数で四則演算が有効な数までは31ビットまでを一区切りにして(整数型だと32ビット目は符合ビットなので計算がおかしくなるかも) いったん10進数にしてから、2の乗数を掛け算して足していけば(擬似的にビットシフト)格納までは出来るかも? 倍精度実数を2進数のビット列に変換して情報を取り出す方法は、確かおちゃめさんがそんな感じの自作関数を作られてたのを見た気がしますけど・・・ 「うまいこと計算する」の内訳ってこんな感じです? でもメモリの使用量の違いが整数型と倍精度実数でカッチリ2倍くらいの差だったら、整数型で全部のビットを使って上位32ビット下位32ビットの仮想64ビットみたく使った方がお得だったりするんですかね?