首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#中用于检查器的BitBoard

C#中用于检查器的BitBoard
EN

Stack Overflow用户
提问于 2015-03-24 23:35:10
回答 1查看 493关注 0票数 1

我研究过bitboard,但是没有找到一个关于c#中bitboard编码的例子。如果有人愿意说明一个跳棋棋盘(8x8)是如何用32位编程的。

我知道有64个方块,但是如何填充其中的32个,并且都包含这些32位的数据结构。

EN

回答 1

Stack Overflow用户

发布于 2018-02-05 15:11:54

你基本上不是只使用一个位板,而是使用多个位板。不同的位板代表板上不同种类的棋子,这就是位板的魔力发挥作用的地方。假设您有一个表示bitboard上的白卒的bitboard P,现在为了获得每个白卒的合法走法,您可以简单地这样做

代码语言:javascript
复制
legalMovesForWhitePawns = (P << 8) & ~(AllWhitePiecegs | AllBlackPieces)

这条简单的语句将为您提供白卒的所有单步非捕获动作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29236801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档