22/01/09 21:50:51.38 sZC3oXej.net
なんか変なこと書いた
res' = floor( log x / log2 )
if 2^res' < x
then res = res' + 1
else res = res'
やな
res'の算出で丸め誤差は-1までと仮定して補正する
しかしもちろんlog(x)とか2^nハード的にFPUとかで高速にやってくれてしかも整数演算は誤差なしでやってくれる前提
この辺は高級言語プログラマレベルの話でなんとかなるもんではない
やるならアセンブリ言語レベルでやるしかない