Author: Tom Likens
Date: 07:55:01 02/21/04
Go up one level in this thread
On February 21, 2004 at 04:09:22, Mathieu Pagé wrote:
>Hi,
>
>This is my move structure:
>
>class CCoup{
> char tcCoup; // type of move castling promotion (the piece)
> unsigned char cPiecePrisePieceJoue; // type of the piece moved and on the
> // piece taken if any.
>
> int iFrom; // self explaning
> int iTo; // ditto
>
>...
>};
>
>It is 10 bytes long. is it common to have a move struct that "big" ?
>
>from and to could be compress to one byte each, but i Think (i'm not sure) it
>would be less efficient since I often have to use them as a table index and a
>table index is always (on my target architecture) 4 bytes.
>
>Am I right ? What do you think of it ?
>
>Mathieu P.
Like Tim and Bob, I use an unsigned int (32-bits) to hold a move.
My program, like yours is written in C++, so I have defined a class
"move_t" that hides the data representation. Using a class (or
equivalently a structure) makes it easy to try different data structures
in a very transparent way.
regards,
--tom
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.