User Tools

Site Tools


chess:programming:lsb_least_significant_bit

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
chess:programming:lsb_least_significant_bit [2021/10/30 11:55] peterchess:programming:lsb_least_significant_bit [2021/10/30 13:11] (current) peter
Line 19: Line 19:
 ---- ----
  
-===== Using bit-wise operations =====+===== Using Bit-wise operations =====
  
 <code cpp> <code cpp>
Line 49: Line 49:
  
 ---- ----
 +
 +===== Using Builtin =====
 +
 +GCC has **<nowiki>__builtin_clz</nowiki>**.
 +
 +<code cpp>
 +lsb = __builtin_clz(pos);
 +</code>
 +
 +----
 +
 +
  
 ===== Using de Bruijn ===== ===== Using de Bruijn =====
Line 83: Line 95:
  
 </WRAP> </WRAP>
- 
  
 ---- ----
 +
  
 ===== Using Logs ===== ===== Using Logs =====
Line 176: Line 188:
  
 ===== References ===== ===== References =====
- 
-https://docs.microsoft.com/en-us/cpp/intrinsics/bitscanforward-bitscanforward64?redirectedfrom=MSDN&view=msvc-160 
  
 http://graphics.stanford.edu/~seander/bithacks.html#IntegerLogDeBruijn http://graphics.stanford.edu/~seander/bithacks.html#IntegerLogDeBruijn
Line 183: Line 193:
 https://www.chessprogramming.org/De_Bruijn_Sequence_Generator https://www.chessprogramming.org/De_Bruijn_Sequence_Generator
  
 +https://en.wikipedia.org/wiki/Bit_numbering
 +
 +https://docs.microsoft.com/en-us/cpp/intrinsics/bitscanforward-bitscanforward64?redirectedfrom=MSDN&view=msvc-160
chess/programming/lsb_least_significant_bit.1635594954.txt.gz · Last modified: 2021/10/30 11:55 by peter

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki