Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Way of compressing attacks bitboards

Author: Robert Hyatt

Date: 21:50:45 05/06/04

Go up one level in this thread


On May 07, 2004 at 00:24:42, Russell Reagan wrote:

>On May 06, 2004 at 20:05:03, Robert Hyatt wrote:
>
>>I don't follow.  I currently use 6-bit indices _everywhere_.  Because the two
>>endpoints are moot.  We're not changing that.  Just squeezing out the bit for
>>the square where the piece in question sits...  it is meaningless and could be a
>>zero or 1 and produce the same attacks...
>
>He is saying you can't always get correct attacks from 5 bits. Another way of
>putting it is that you can't always squeeze out the square that the attacker
>sits on, because it may have already been squeezed out.

I realized that after Gerd pointed it out...  (see the other sub-thread).

I already use just 6 bits...  and was not thinking about the case where the
piece sits on the end of the rank/file/diagonal...

>
>Let's say you start with all 8 bits for the 1st rank. You squeeze out the end
>bits, squares a1 and h1. You want to get attacks for a rook on a1. You can't
>squeeze out the square the attacker is on (a1), because you already squeezed it
>out.
>
>Put a rook on a1 and try to get correct horizontal attacks from 5 bits in all
>cases for the 1st rank. Take a simple example, 5 bits = 00000. What is the
>attack bit pattern for the 1st rank? Here is the board. You get 5 bits worth of
>rank state info, plus the implied rook on a1.
>
>  abcdefgh
>8 --------
>7 --------
>6 --------
>5 --------
>4 --------
>3 --------
>2 --------
>1 R-----??
>   ^^^^^
>   12345 <-- You only get 5 bits
>
>What is the correct attack bitboard for this position?
>
>- represents a 0 bit
># represents a 1 bit
>
>Choice A:
>--------
>--------
>--------
>--------
>--------
>--------
>--------
>-#######
>
>
>Choice B:
>--------
>--------
>--------
>--------
>--------
>--------
>--------
>-######-
>
>Choice C:
>Impossible to know without more information.



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.