Lookup-table

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Aufgrund technischer Veränderungen ist der Mailverkehr innerhalb des Forums (Private Nachrichten) nur noch eingeschränkt möglich. Die Einschränkung ist notwendig, um zusätzliche Betriebskosten für das Forum zu vermeiden. Näheres zu den Hintergründen im Thread "Aktuelles zum Forum".Wir bitten um Verständnis.

Hinweis kann nach Kenntnisnahme deaktiviert werden!

  • Lookup-table lässt sich mit Suchtabelle, Nachschlagetabelle oder einfach mit Datentabelle übersetzen.
    Lookup-Tabellen (LUT) bieten einen Geschwindigkeitsvorteil, wenn aufwendige Berechnungen zur Laufzeit, durch bereits kalkulierte Wertereihen ersetzt werden können. Wenn also alle möglichen Ergebnisse im Vorhinein bekannt sind, können diese zu einerTabelle zusammengefasst werden. Eine variable Größe dient dabei als Indizierungshilfe. Mithilfe des Index kann der entsprechende Eintrag aus derTabelle geladen werden.
    Lookup-Tabellen sind also endliche und geordnete Datenreihen und unterscheiden sich grundsätzlich nicht von anderen Data-Zeilen die in den Programmspeicher gebracht werden.
    Eine Lookup-Tabelle weiß also nicht, dass sie eine ist. Es gelten damit dieselben Regeln wie unter Data beschrieben.

    Bei der Erstellung einer LUT sind folgende Punkte zu beachten.
    • Eine LUT ist mit einer Programmarke zu versehen.
    • Alle Daten sind vom selben Typ.
    • Der erste Eintrag, bzw. das erste Element hat den Index 0.
    • Der Index ist fortlaufend. Jedes Element bildet mit seinem Index ein Schlüssel-Wertepaar.
    • Die Daten liegen im FlashROM und sind damit zur Laufzeit unveränderlich.
    • Die Anzahl möglicher Daten ist nur die Größe des FlashRom begrenzt.
    Ein Beispiel für eine vorkalkulierte Sinustabelle im Byteformat:


    'Int(sin(alpha * Pi / 180) * 127 + 127)
    Sine_table:
    Data 127 , 129 , 131 , 134 , 136 , 138 , 140 , 142
    Data 145 , 147 , 149 , 151 , 153 , 156 , 158 , 160
    Data 162 , 164 , 166 , 168 , 170 , 172 , 175 , 177
    Data 179 , 181 , 183 , 185 , 187 , 189 , 190 , 192
    Data 194 , 196 , 198 , 200 , 202 , 203 , 205 , 207
    Data 209 , 210 , 212 , 214 , 215 , 217 , 218 , 220
    Data 221 , 223 , 224 , 226 , 227 , 228 , 230 , 231
    Data 232 , 233 , 235 , 236 , 237 , 238 , 239 , 240
    Data 241 , 242 , 243 , 244 , 245 , 246 , 246 , 247
    Data 248 , 248 , 249 , 250 , 250 , 251 , 251 , 252
    Data 252 , 252 , 253 , 253 , 253 , 254 , 254 , 254
    Data 254 , 254 , 254 , 254 , 254 , 254 , 254 , 254
    Data 253 , 253 , 253 , 252 , 252 , 252 , 251 , 251
    Data 250 , 250 , 249 , 248 , 248 , 247 , 246 , 246
    Data 245 , 244 , 243 , 242 , 241 , 240 , 239 , 238
    Data 237 , 236 , 235 , 234 , 232 , 231 , 230 , 229
    Data 227 , 226 , 224 , 223 , 221 , 220 , 218 , 217
    Data 215 , 214 , 212 , 210 , 209 , 207 , 205 , 204
    Data 202 , 200 , 198 , 196 , 194 , 193 , 191 , 189
    Data 187 , 185 , 183 , 181 , 179 , 177 , 175 , 173
    Data 171 , 169 , 166 , 164 , 162 , 160 , 158 , 156
    Data 154 , 151 , 149 , 147 , 145 , 143 , 140 , 138
    Data 136 , 134 , 132 , 129
    '....
    '....
    Data 92 , 94 , 96 , 98 , 100 , 102 , 105 , 107
    Data 109 , 111 , 113 , 116 , 118 , 120 , 122 , 124
    Sine_table_end:

    4.723 mal gelesen