とちゅうで書き込みおしちゃったよ。
=================================
キーが 000から999までの正整数であるとして、
かつそれらに重複が無い場合、

キー自体をアドレスにできる、ってのは判ると思います。


で、現実問題として、キーの部分を(例えば16進で評価して)
そのまま数字にすると、格納するためのアドレスが広大になるわけです。

てなわけで限られた領域の中に、データを振り分けるため
そういうものを使うことになります。

具体的な計算方法については、631 のかたが書かれたように、
アルゴリズムの教科書を読めば(本屋で立ち読みして該当個所を
読む程度でOK)よいと思います。