Spiegazione
Un bitboard rappresenta un insieme di case della scacchiera mediante un numero a 64 bit. Un bit è un’unità che può contenere soltanto 0 o 1. Poiché una scacchiera ha 64 case, a ogni casa può essere assegnato un bit.
Il valore 1 non significa sempre che sia presente un pezzo. Significa che la casa appartiene all’insieme descritto da quel bitboard. Un bitboard può indicare tutti i pedoni bianchi, ogni casa attaccata da un cavallo, tutte le case occupate o qualunque altro gruppo utile.
Un mantiene normalmente più bitboard contemporaneamente. Le operazioni bit a bit, che combinano direttamente gli zero e gli uno, possono intersecare insiemi, unirli, rimuovere case o traslare schemi con pochissime istruzioni del processore. Ciò favorisce una rapida generazione di mosse e attacchi.
Che cosa non memorizza da solo un bitboard
- Ogni tipo di pezzo, a meno che altri bitboard non forniscano questa separazione.
- Quale parte deve muovere.
- I diritti di , cioè se la speciale mossa congiunta di re e torre è ancora consentita, e la disponibilità della presa en passant, cioè se un pedone può eseguire quella cattura speciale.
Una posizione completa combina questi dati con diversi insiemi. Un bitboard non è neppure un metodo di ricerca come la ; è una rappresentazione delle informazioni.
Confusioni comuni
Un bitboard e lo stato completo della scacchiera
Un bitboard descrive normalmente un solo insieme di case. Una posizione completa combina più insiemi con altre informazioni di stato.
Bitboard e bitbase
Un bitboard rappresenta case di una posizione; una bitbase memorizza risultati per molte posizioni di finale.
Visualizza termineFonti
- 1.Bitboards, Chess Programming Wiki
- 2.bitboard.h, Stockfish
