位棋盘

一种由64个0或1指示位组成、每格对应一位,用来标记哪些格子属于指定集合的表示法。

此页面暂时以英语显示。完整本地化将在后续阶段加入。

解释

位棋盘用一个64位数字表示国际象棋棋盘上的一组格子。位是一种只能取0或1的信息单位。由于棋盘有64格,可以为每个格子分配一位。

值为1并不总是表示格子上有棋子,而是表示该格属于这个位棋盘所描述的集合。一个位棋盘可以标记全部白兵、某匹马攻击的每个格子、所有被占据的格子,或任何其他有用的集合。

通常会同时维护多个位棋盘。按位运算直接组合0和1,可以用很少的处理器指令求集合交集、并集、移除格子或移动模式,从而支持快速生成着法和攻击。

单个位棋盘本身不保存什么

  • 每一种棋子类型,除非由其他位棋盘提供这种区分。
  • 轮到哪一方走棋。
  • 权,也就是王与车的特殊着法是否仍被允许,以及吃过路兵是否可用,也就是兵能否进行这种特殊吃法。

一个完整局面会把这些事实与多个集合结合起来。位棋盘也不是一类搜索方法,而是一种信息表示方式。

常见混淆

位棋盘与完整棋盘状态

一个位棋盘通常只描述一组格子。完整局面会把多个集合与其他状态信息结合起来。

位棋盘与位库

位棋盘表示一个局面中的格子,位库则保存许多残局局面的结果。

查看术语

来源

  1. 1.Bitboards, Chess Programming Wiki
  2. 2.bitboard.h, Stockfish

相关术语

© 2026 MindZug