Tietojenkäsittelytieteessä hakutaulu (engl. lookup table) on taulukko- tai matriisimuotoinen tietorakenne, joka sisältää haettavat tiedot.[1] Hakutaulussa tiedot voidaan järjestää avain-arvo -pareiksi, jossa tietoa etsitään täsmäävän avaimen mukaan mukaan ja arvo haluttu tieto tai sen osoitin.[1] Hakutaulussa ei ole välttämättä lainkaan avainta, vaan arvon sijainti taulukossa voi olla sen hakuehto.[1]

Matematiikassa hakutaulua on käytetty muun muassa sinifunktion arvoille kuten Aryabhatan taulukko.[2]

Hakutauluja käytetään ohjelman optimointiin korvaamalla laskentaoperaatio viittauksella ennaltalaskettuun tulostauluun.[3] Hakutaulu parantaa suorituskykyä kun laskenta vaatisi enemmän aikaa kuin muistihaku.[3]

Eräiden suorittimien käskykannassa on tuki hakutaulusta hakemiselle sekä arvojen interpolaatiolle.[4]

Katso myös muokkaa

Lähteet muokkaa

  1. a b c Definition of: lookup table PC Magazine. Viitattu 29.8.2019. (englanniksi)
  2. D. Joyce: Aryabhata’s trig table Math 105 History of Mathematics (PDF) mathcs.clarku.edu. 2015. Viitattu 29.8.2019. (englanniksi)
  3. a b Chris Wilcox & Michelle Mills Strout & James M. Bieman: Mesa: Automatic Generation of Lookup Table Optimizations (PDF) cs.colostate.edu. Arkistoitu 11.8.2017. Viitattu 29.8.2019. (englanniksi)
  4. Sharon Darley: How to Use the Table Lookup and Interpolate Instruction on the CPU32 (PDF) FreeScale. Viitattu 30.8.2019. (englanniksi)