Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Hash Collisions

Author: Dave Gomboc

Date: 01:58:30 02/23/99

Go up one level in this thread


On February 22, 1999 at 11:14:14, Robert Hyatt wrote:

>I'll try to figure out a way to post my values here if you are interested.
>64 * 12 isn't horribly big, but when you display them as 64 bit values, they
>are big. The main issue is how to initialize such an array in a portable
>way...  IE (BITBOARD ran[12][64] = {{1,2,3},{4,5,6}};  The numbers 1,2,3
>default to 'int' which is bad.  I don't know what to do for all compilers
>(IE 123ULL or (BITBOARD) 123)

I don't know of a portable way to do this either.  My Rush Hour
(www.puzzles.com) software has "#if defined"s like crazy for all of the annoying
cases, e.g.

/* MSVC 6.0 */
typedef unsigned __int64 bitboard;
const bitboard outside_edge = 0xFF818181818181FF;

/* SGI MIPSpro 7.2.1 (with -64 switch) */
typedef unsigned long bitboard;
const bitboard outside_edge = 0xFF818181818181FF;

/* g++ 2.7.2 */
typedef unsigned long long bitboard;
const bitboard outside_edge = 0xFF818181818181FFll;

Of the three, I like SGI's setup the best.

Dave Gomboc



This page took 0.01 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.