Anonymous user
Talk:Find first and last set bit of a long integer: Difference between revisions
Talk:Find first and last set bit of a long integer (view source)
Revision as of 02:39, 8 December 2011
, 12 years ago→Initial C code specimen requires a long int algorithm: new section
m (→Initial C code specimen requires a long int algorithm: new section) |
|||
Line 33:
[[User:NevilleDNZ|NevilleDNZ]] 02:02, 8 December 2011 (UTC)
== Initial C code specimen requires a long int algorithm ==
The use of #define in the C code specimen works really well when unrolling a loop.
The code issues are:
* code specimen lacks any more generally algorithm that would work - for example - with 128, or 256 width '''bits'''.
* the code confuses "lowest set bit" (a bit order concept) with "least significant bit" (an integer concept). These are actually almost opposites on most machines.
* ditto for "upper set bit" and "most significant bit".
* the results are in hex eg. 0xc0ffee, not binary 0b110000001111111111101110 making it difficult to visually discover/confirm the results.
Try using [[wp:Duff's device|Duff's device]] to unroll wider '''bits''' types.
NJoy [[User:NevilleDNZ|NevilleDNZ]] 02:39, 8 December 2011 (UTC)
|