Index
/
Reload
Edit on
programming__bitcount
このコメントを修正します。
内容を修正した後で投稿時のパスワードを入力してください。
現在、コメントを削除する機能がありません。
コメントを削除したい場合には、 コメント欄を空欄にしておいてください (管理人が後で削除します)。
お名前:
E-mail or URL:
Password:
コメント:
下位ビットの影響を受けてしまうので、消してあげないといけないですね。 int nlz(int x) { int c = 0; if (x == 0) return 32; if (x & 0xffff0000) { x &= 0xffff0000; c |= 0x10; } if (x & 0xff00ff00) { x &= 0xff00ff00; c |= 0x08; } if (x & 0xf0f0f0f0) { x &= 0xf0f0f0f0; c |= 0x04; } if (x & 0xcccccccc) { x &= 0xcccccccc; c |= 0x02; } if (x & 0xaaaaaaaa) { c |= 0x01; } return c ^ 31; }
Powered by
くっつき BBS