Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Bitboards: must I rotate ?

Author: Daniel Clausen

Date: 12:57:38 05/11/02

Go up one level in this thread


On May 11, 2002 at 15:04:14, pavel wrote:

>On May 11, 2002 at 09:46:49, Vincent Diepeveen wrote:
>
>>On May 11, 2002 at 05:48:17, Matthias Gemuh wrote:
>>
>>for attacktables, bitboards isn't the fastest thing.
>>
>>Bitboards is a tradeoff. You put less information into
>>a single 64 bits word. So you can use instructions like AND and OR
>>more easily.
>>
>>However to get attacktables you might want to look at gnuchess 4.0 (not
>>5.0 which was raped and rewritten to bitboards for some unknown reason).
>>
>>Gnuchess is putting more information into a single word for each
>>square. The advantage is you can faster work with complex knowledge.
>>
>>The disadvantage is obviously a slowdown in speed because you use
>>more knowledge.
>
>So in short it means, bitboard helps put more information (==more knowledge)in a
>single square (64 bits?), if that is what I understand.
>

[snip]


Not quite. In a bitboard approach, each bit represents one square of the
chessboard, and you can store exactly 1 bit of information about each square.
(ie square is occupued by a white piece or not, square is attacked by an enemy
knight or not, you get the idea) Storing more information requires more
bitboards. (1 bitboard for each bit of information :)

Let's compare this to an alternative board representation, say 'int square[64]'.
In this approach we have an integer (is >= 32 bit, if your compiler is ANSI-C)
and therefore can store much more information about a particular square.

This doesn't mean that bitboard-programs necessarily are dumber though. (ok,
mine is :p) Just use more bitboards if you want to use more information :) For
example Crafty is a bitboard-engine and is quite intelligent, IMHO. (YMMV)

HTH

Sargon



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.