>>578
盤面の記憶だけを考えてみた。

駒の種類と同じで、先手後手も位置で表現できる。
盤上の位置は0〜80までの番号で表せられる
そうすると位置情報で7bit、成りで1bitか
(持ち駒は座標を盤外にする)

これで1盤面当たり40byte(320bit)
扱いやすさを考えると、この当たりが妥当かと思われる
ただし、これはCでの試算なので、C++はともかくJavaとかだと
classにするともっと消費されるかもしれない