ビットに基づいてif/elseスイッチ/ケースを実行するための効率的なアルゴリズムを開発する上であなたのアイデアは何だったのだろうかと思いました。私は8ビットで遊ぶ必要があり、次のようにそれらを上位ビットと下位ビットに分割する必要があります。
0000 1111
各半分には、ビットがオンになる情報ベースが含まれています。たとえば、下半分(1111
このリトルエンディアンのマシン)が実際0010
にある場合、何かが起こります。さらに、ハイエンドがである場合1000
、何か別のことが起こります。
上半分を右シフトして比較するのが効率的だと思いますAND
((x >> 4) & 8)
たとえば、左シフトして奇妙な数値と比較するのは少し賢くないように見えるので、下半分に対して何をするのが賢明かはわかりません。
繰り返しになりますが、あなたの洞察に感謝します。