お返事ありがとうございます.

> 確率が高いほうから調べる

なるほど.どの bit が立っている確立が高いか考えて順番を入れ替えて
見ます.


> まずバイト単位で0じゃないバイトを探してからビットを探すっての
> はどう?

C でプログラムを書く場合,上記のような方法も考えました.8 bit 単
位で bit の立っている位置,もしくはどこも立っていないという情報を
格納した 256 要素からなるテーブルを参照する方法です.しかし,
inline assembly で bsr 命令を使うと,32 ビット単位の bit scan
をしつつ,どの bit もたっていなければフラグを立ててくれるのです.