Author: Vincent Diepeveen
Date: 07:16:45 05/29/04
Go up one level in this thread
On May 29, 2004 at 04:24:18, Tony Werten wrote: >On May 28, 2004 at 18:37:29, Bas Hamstra wrote: > >>On May 28, 2004 at 16:31:39, Tony Werten wrote: >> >>>On May 28, 2004 at 15:32:29, Russell Reagan wrote: >>> >>>>On May 28, 2004 at 14:52:09, Slater Wold wrote: >>>> >>>>>On May 28, 2004 at 14:19:06, Vincent Diepeveen wrote: >>>>> >>>>>>On May 28, 2004 at 12:01:17, Gopikrishna wrote: >>>>>> >>>>>>>I would like to know if any simple engine uses bitboard representation.Because >>>>>>>Crafty's bitboard is complicated and I would like to find some other engine >>>>>>>using a simpler representation.And also what are the other ways of board >>>>>>>representation? Thanks. >>>>>> >>>>>>If you give your email adress i can ship you diep's move generator with source >>>>>>code and code to initialize tables. >>>>>> >>>>>>Best regards, >>>>>>Vincent >>>>> >>>>>While you're handing it out, slaterwold@earthlink.net. :) >>>> >>>>Here you go. >>>> >>>>http://chessprogramming.org/cccsearch/ccc.php?art_id=310440 >>>> >>>>If you can figure out what is going on, please explain it to the rest of us. >>> >>>It's basic idea is the gnuchess move generator, but made much more efficient by >>>not hopping all through the squares array, but keeping all consequetive moves in >>>a row. >>> >>>It also makes the efficiency of the move generator independant of the board >>>size. >>> >>>Tony >> >>The old GNU move generator I know is traversing the board via pointers, *NextDir >>and *NextSq. > >Pointers, array indexes, all the same. Only difference is an extra register. not at all, sequential looping through data at some processors goes faster than random jumping through data. >>But that was relatively slow because it's faster to add something >>in a register than to do an extra memory access. > >Yes, you would have to hop to nextsquare to see how it would go from there. Now >you only have to look what square we are talking about, and if !nil, you will >always know that the nextsquare will be given at *sq++ > >So you basicly made "nextsq" and "location of nextsq" independant of each other, >thereby making it independant of board representation and making it more >efficient since you will be traveling through the array in a row, rather than >randomly accesed. > >Tony > >> >> >>Bas.
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.