Author: Sune Fischer
Date: 08:07:32 11/20/02
Go up one level in this thread
On November 20, 2002 at 10:57:01, Robert Hyatt wrote:
>On November 20, 2002 at 05:44:10, Sune Fischer wrote:
>
>>On November 20, 2002 at 05:37:43, Steffan Westcott wrote:
>>
>>>On November 20, 2002 at 05:05:25, Sune Fischer wrote:
>>>
>>>> I believe that "move for move" 0x88 is faster because you don't have to do
>>>> that extra bit scan to get the square
>>>
>>>Which square are you referring to? Source square? Destination square? I may be
>>>able to help you...
>>
>>With bitboards (as I'm sure you know) you need a piece of assembler using bsf,
>>then you need to clear the bit afterwards. This is not needed with 0x88.
>>
>>ie:
>> while (padvances2) {
>> to=FirstOne(padvances2);
>> *move++=(to+16)|(to<<6)|(pawn<<12);
>> Clear(to,padvances2);
>> }
>>
>
>
>
>Wrong idea however. Most of the move generations done are for captures. 0x88
>can't keep up with bitmaps there, because bitmaps generate _only_ capture moves,
>while 0x88 walks down each rank/file/diagonal skipping empty squares.
Yep, wasn't that what I said??
>that is one of the strengths of bitmaps. finding a bit is quick. Clearing it
>takes one
>cycle. not very expensive.
I think that was my point exactly.
-S.
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.