Author: Russell Reagan
Date: 12:07:33 09/21/04
Go up one level in this thread
On September 21, 2004 at 06:57:37, Gerd Isenberg wrote: >>enum { white, black }; >> >>// pawn moves forward >>pawnMoves = (pawns << 8) >> (16 * side); >Yes, this "generalized" shift by one rank works well for pawns, because they >don't occupy first or eight rank. > >BitBoard pawnPushTargets(BitBoard pawns, int side) { > return (pawns << 8) >> (16 * side); >} > >What about left and right pawn attacks with this trick? Maybe something like this? I didn't have time to test it right now. enum { white, black }; // For this function, left means left from white's point of view. // Examples of pawn attacks left: e4d5 for white // e4d3 for black Bitboard PawnAttacksLeft (Bitboard pawns, int side) { return ((pawns << 7) >> (16 * side)) & notFileH; }
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.