Hi,
The contents of the RAM can be seen as a database.
And I thought that "index" is a known phrase in this area.
OS (like Windows) use the same phrase for faster finding the files on their hard drives.
****
How it works.
Without an index the values are randomly spread over the whole memory.
Thus you may look at each single memory place to find out if the value matches.
Now and index is a number of pointers to the contents of the memory.
But the first pointer shows the address of the memory with the lowest value.
And the next pointer shows the address of the next higher value of your memory (or same value, if allowed).
So the index shows the adresses to the memory contents in ascending order of the values.
The benefit is that now you can use a "binary search".
Let's assume you have 1024 values in your memory.
Without indexing you may
* read ut to 1024 memory contents
* and do up to 1024 "compares"
With indexing you need to
* read up to 10 index contents (binary search)
* read up to 10 (indirect addressed via index content) memory content
* do up to 10 "compares"
That' s 2048 instructions vs 30 instructions. A huge improvement.
There are a lot of documents, even video tutorials about indexing and binary search.
Klaus