Author: Tony Werten
Date: 23:22:44 01/29/03
Go up one level in this thread
On January 29, 2003 at 23:29:36, Russell Reagan wrote:
>http://members.home.nl/matador/chess840.htm#INTRO
>
>From Ed's page...
>
>switch (piece_type) { case 0 : goto empty;
> case 1 : goto white_pawn; // evaluate white pawn
> case 2 : goto white_knight; // evaluate white knight
> case 3 : goto white_bishop;
> case 4 : goto white_rook;
> case 5 : goto white_queen;
> case 6 : goto white_king;
> case 7 : goto black_pawn; // evaluate black pawn
> case 8 : goto black_knight;
> case 9 : goto black_bishop;
> case 10 : goto black_rook;
> case 11 : goto black_queen;
> case 12 : goto black_king; }
>
>
>On one portion of Ed's discussion of Rebel (see above), he talks about using
>"indirect addressing". I get the impression from Ed's words that this method is
>supposed to fast. I understand his discussion to mean that if you create a
>switch statement like he does, you create a jump table and avoid a bunch of
>conditionals.
Could be that Ed doesn't use the switch at all, since he programs a lot in
assembly where the jumptable is the only reasonable solution.
Tony
>
>However, in past discussions, I recall hearing that using a function pointer is
>going to be at least as slow as conditional, so I asked someone, and was told
>that Ed's example should be no different than using a function pointer or
>virtual functions.
>
>Ed talks about this method as if it is a good thing to use. So what is the
>advantage of it? Either someone is mistaken, or Ed and the guy I talked to are
>talking about different things.
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.