Author: Gian-Carlo Pascutto
Date: 06:52:11 05/22/01
Go up one level in this thread
On May 22, 2001 at 09:43:49, Robert Hyatt wrote: >>2) How to generate a 64 bit random number? (I use ran()*ran(). Is it OK?). > >I would use ran()<<32 + ran myself. Just make sure you package your own ran(). The quality of C libraries one will vary greatly. I did a test with 32 bit hashes and MSVC: average hamming distance of 9.30, whereas my own (which I stole from Crafty, which stole it from...) got 15.99, which is theoretically optimal I suppose. >>6) I use the operation addition for making new hash key. Certainly, it is >>slower >>than XOR, but anything else? (I heard one time about it, but forgot). > >XOR is better. and easier to undo when you take back a move. If you use >add, you can get overflows and when you later subtract, you can have a problem. If you do addition/subtraction modulo 2^32, you will not have that problem. Most architectures do that by default. If your compiler has range checking it will complain though. -- GCP
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.