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
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
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
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éseForrások
- 1.Bitboards, Chess Programming Wiki
- 2.bitboard.h, Stockfish
