Bittábla

Hatvannégy nulla vagy egy értékű jelzőből álló reprezentáció, amely mezőnként megmutatja, mely mezők tartoznak egy kiválasztott halmazhoz.

Magyarázat

A bittábla 64 bites számmal ábrázolja a sakktábla mezőinek egy halmazát. A bit olyan egység, amelynek értéke csak 0 vagy 1 lehet. Mivel a sakktáblán 64 mező van, minden mezőhöz egy bit rendelhető.

A világos gyalogok maszkja

8
7
6
5
4
3
2
a1
b
c
d
e
f
g
h
Az aktív bitek a , , és mezőn álló világos gyalogoknak felelnek meg.
Mezőnként egy bit

Rögzített helyi konvenció: a jelzőket soronként olvassuk -tól -ig, majd -től -ig, és így tovább -től -ig. Az 1 a halmazhoz tartozást jelzi. A megjelenített halmaz, világos gyalogok: 00000000/00000000/00000000/00000000/00000000/00101000/10000001/00000000. A lépésen lévő fél és a többi FEN-adat nem része ennek a maszknak.

Az 1 érték nem mindig azt jelenti, hogy figura áll a mezőn. Azt jelenti, hogy a mező beletartozik az adott bittábla által leírt halmazba. Egy bittábla megjelölheti az összes világos gyalogot, egy huszár által támadott valamennyi mezőt, minden foglalt mezőt vagy bármely más hasznos csoportot.

Huszártámadási maszk

8
7
6
5
4
3
2
a1
b
c
d
e
f
g
h
A -en álló huszár nyolc geometriai célmezője alkotja a halmazt, még akkor is, ha üresek.
Egyesek figurák nélkül

Ugyanazt a soronkénti sorrendet használjuk. A megjelenített halmaz, a -en álló világos huszár által támadott mezők: 00000000/00000000/00101000/01000100/00000000/01000100/00101000/00000000. Az egyesek geometriai tulajdonságot írnak le akkor is, ha ezeken a mezőkön nem áll figura.

Egy rendszerint több bittáblát tart fenn egyszerre. A nullákat és egyeket közvetlenül kombináló bitenkénti műveletek nagyon kevés processzorutasítással tudnak halmazokat metszeni, egyesíteni, mezőket eltávolítani vagy mintákat eltolni. Ez gyors lépés- és támadásgenerálást tesz lehetővé.

A támadási és foglaltsági maszk metszete

8
7
6
5
4
3
2
a1
b
c
d
e
f
g
h
A és a A-hoz és B-hez is tartozik: a -en álló bástya támadja őket, és sötét figurák foglalják el őket.
Az A és B metszetének eredménye

A már meghatározott soronkénti sorrend szerint A a -en álló világos bástya által támadott mezők halmaza, B pedig a sötét figurák által elfoglalt mezők halmaza. A megjelenített halmaz A és B metszete: 00000000/00000000/00000000/00010000/00000000/00000000/00000000/00000001. Az aktív bitek a és mezőnek felelnek meg. A -on álló sötét király B-hez tartozik, de A-hoz nem.

Amit egyetlen bittábla önmagában nem tárol

  • Minden figura típusát, hacsak más bittáblák nem biztosítják ezt a szétválasztást.
  • Hogy melyik fél következik.
  • A jogokat, vagyis hogy még engedélyezett-e a király és a bástya különleges közös lépése, valamint az en passant lehetőségét, vagyis hogy egy gyalog végrehajthatja-e ezt a különleges ütést.

Egy teljes állás ezeket az adatokat több halmazzal együtt tárolja. A bittábla nem olyan keresési módszer sem, mint az ; információábrázolási forma.

Gyakori félreértések

Bittábla és teljes táblaállapot

A bittábla rendszerint egyetlen mezőhalmazt ír le. A teljes állás több halmazt és további állapotadatokat egyesít.

Bittábla és bitbázis

A bittábla egy állás mezőit ábrázolja; a bitbázis sok végjátékállás eredményét tárolja.

Kifejezés megtekintése

Források

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

Kapcsolódó kifejezések

© 2026 MindZug