Author: James Long
Date: 17:42:58 12/09/98
Go up one level in this thread
On December 09, 1998 at 05:32:15, Dan Newman wrote:
>On December 06, 1998 at 10:23:54, Robert Hyatt wrote:
>
>>I haven't finished this yet... I've sent it to a couple of people in draft
>>form when they asked... And will do the same for you if you are interested.
>>Note that it is a rough draft, reasonably complete, but not "polished" yet...
>
>I'd be interested in a copy too (hope you're not too inundated with
>requests). email: dnewman@bellatlantic.net
>
>After reading the lastest posts on bitboards, I've begun trying my
>hand at them (again). The main sticking point with me was the cost
>of bit index extraction--I was only able to get bitboard move
>generation to go at about half the speed of 0x88. But, I just did
>an experiment with the BSF instruction (inline assembly) and have
>gotten the best results yet--something less than 9 clocks per
>bit-index on a P6. My previous best was 16 clocks using pure C.
>
>One trick I just discovered (which is pretty obvious actually) is
>using XOR to clear the bit: I had been doing this:
>
> bitboard &= ~(1 << index);
>
>but this can be done, saving one operation, like this:
>
> bitboard ^= (1 << index);
Better yet precompute the mask for each square's bit,
and just do something like:
bitboard ^= bb_mask[index];
--
James
>
>since we know the bit is set.
>
>-Dan.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.