Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: For Bruce or anyone else who might know what he means...

Author: Peter McKenzie

Date: 16:17:12 11/20/01

Go up one level in this thread


On November 20, 2001 at 19:09:41, Dann Corbit wrote:

>From his chess programming page, we have this:
>
>Move Generation and Move Ordering
>    Move Generation Techniques
>      * 0x88
>      * Move Table
>      * Bitboards
>
>I am familiar with 0x88 and Bitboards, but what does he mean by 'Move Table'?
>Just an x by y array with pieces in it, or is it something more refined than
>that?
>
>Inquiring minds want to know, and so do I.

Its the method used by GNU Chess.
You have a table containing a list of moves for each combination of piece type
and square.  The contents of this table is typically computed on startup.

So for example, a knight on A1 can only move to B3 and C2 so you would be able
to index into a big table like so: MoveTable[KNIGHT][A1] and you would have
access to a list containing B3 and C2.

It works for sliders too, although of course you have several lists - one for
each direction and you must check the board for blocking pieces.

cheers,
Peter



This page took 0.01 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.