Bitboard

Rappresentazione con 64 indicatori pari a zero o uno, uno per casa, che segnala quali case appartengono a un insieme scelto.

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.

Maschera dei pedoni bianchi

8
7
6
5
4
3
2
a1
b
c
d
e
f
g
h
I bit attivi corrispondono ai pedoni bianchi in , , e .
Un bit per casa

Convenzione locale fissa: gli indicatori si leggono per traverse da a , poi da a e così via fino ad e . Un 1 indica l'appartenenza all'insieme. Insieme mostrato, pedoni bianchi: 00000000/00000000/00000000/00000000/00000000/00101000/10000001/00000000. Il tratto e gli altri dati FEN non fanno parte di questa maschera.

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.

Maschera degli attacchi del cavallo

8
7
6
5
4
3
2
a1
b
c
d
e
f
g
h
Le otto destinazioni geometriche del cavallo in formano l'insieme, anche se sono vuote.
Bit a 1 senza pezzi

Si mantiene la stessa convenzione per le traverse. Insieme mostrato, case attaccate dal cavallo bianco in : 00000000/00000000/00101000/01000100/00000000/01000100/00101000/00000000. Gli 1 descrivono una proprietà geometrica anche quando su quelle case non si trova alcun pezzo.

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.

Intersezione tra attacco e occupazione

8
7
6
5
4
3
2
a1
b
c
d
e
f
g
h
e appartengono sia ad A sia a B: la torre in le attacca e un pezzo nero le occupa.
Risultato dell'intersezione tra A e B

Con la convenzione per le traverse già dichiarata, A è l'insieme delle case attaccate dalla torre bianca in e B è l'insieme delle case occupate da pezzi neri. L'insieme mostrato è l'intersezione tra A e B: 00000000/00000000/00000000/00010000/00000000/00000000/00000000/00000001. I bit attivi corrispondono a e . Il re nero in appartiene a B, ma non ad A.

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 termine

Fonti

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

Termini correlati

© 2026 MindZug