【问题标题】:chess sliding pieces bitboards国际象棋滑动件位板
【发布时间】:2011-12-17 07:55:01
【问题描述】:

我很容易理解非滑动件,但滑动件一直有一些问题。

我目前有 64 个位板(每个正方形 1 个,未保存在数组中,以及 8 个用于屏蔽行的位板、8 个用于清除行的位板、8 个用于屏蔽列的位板和 8 个用于清除列的位板,以及,当然,每种类型的棋子都有一个位板。

在为主教和车生成合法移动时,我听说您应该在列/行上获得第一个被占用的方格。

我的问题是:

  • 你怎么知道车在哪里以及它与适当的面具一起。
  • 你究竟是如何得到对角线中第一个占据的正方形以及主教的。
  • 如果您知道任何其他常见的位板可以帮助我稍后完成任务,请告诉我。

目前我没有分支,希望减少使用的分支数量,但我觉得这里需要一些分支,并且对解决这个问题的最有效方法感到好奇。

【问题讨论】:

    标签: c 64-bit bit-manipulation chess bitmask


    【解决方案1】:

    Board representationBitboard 上的维基百科条目为该主题提供了很好的解释。

    此外,它们包含许多指向有价值参考的有趣链接。

    我特别建议你学习Crafty的源代码。它的作者是知名权威:Dr.Robert Hyatt

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-04-24
      • 2013-05-24
      • 2022-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-02
      相关资源
      最近更新 更多