The main reason to use the bitboard over other representations is speed , but there are tradeoffs .
位棋盘压倒其他表示方法的主要理由是速度,但其中也有权衡。
To access one square of a bitboard required only a few bit-operations, which languages like C handled well.
访问一个位棋盘中的某个矩形只需要作少量位运算,用C语言就可以很好的处理。
Then, to decide which moves are blocked by Black's own pieces, you take a bitboard of all of Black's pieces, take the complement (the NOT operator) and then AND it to your knights' moves bitboard.
然后,若要断定哪一些步伐会被自己的黑棋子阻挡,你可以获取一个记录所有黑棋的位棋盘,求它的补(非操作Not),然后把它与你的黑马步法位棋盘做与运算(AND)。
Then, to decide which moves are blocked by Black's own pieces, you take a bitboard of all of Black's pieces, take the complement (the NOT operator) and then AND it to your knights' moves bitboard.
然后,若要断定哪一些步伐会被自己的黑棋子阻挡,你可以获取一个记录所有黑棋的位棋盘,求它的补(非操作Not),然后把它与你的黑马步法位棋盘做与运算(AND)。
应用推荐