Co je to indexový registr?
V počítačovém programování a počítačové architektuře je indexový registr oblastí paměti obvykle zabudované do centrální zpracovatelské jednotky (CPU), která se má použít jako velmi rychlý čítač pro procházení paměťovým adresam nebo pro sledování operací, jako je smyčka. V závislosti na typu architektury systému může být indexový registr definovaný a vyhrazený registr mimo jiné procesorové registry nebo může být jakýkoli obecný registr. Nejčastěji indexový registr drží aktuální posun v paměti, přičemž další registr drží základní adresu, takže kombinace obou registrů vytváří dokončenou paměťovou adresu. Jednou ze zvláštních funkcí indexového registru, kdy je jedna speciálně určena CPU, je to, že může být použita k snadno proklouznutí paměťových adres buď zvýšením nebo snižováním podle potřeby, takže datové struktury, jako jsou pole a zásobníky, lze procházet.Zasazení paměti, které jsou obvykle přímo přístupné programátorem pomocí jazyka sestavení nebo podobného programovacího jazyka na nízké úrovni. V některých z běžnějších typů procesorů jsou dva samostatné registry definovány jako indexové registry, jmenovitě zdrojový index (SI) a cílový index (DI) registry. Ostatní procesory nemají konkrétně indexové registry ani podpůrné operátory, které je vyžadují, což znamená, že lze použít jakýkoli obecný registr vhodné velikosti.
Jedním z nejčastějších použití pro indexový registr je působit jako ukazatel na místo paměti, které obsahuje proud dat, ke kterým je třeba přistupovat postupně. Příklad lze vidět při použití řady dat, ve kterých jsou všechny prvky uspořádány po sobě v paměti. Pokud se pro přístup k poli použije indexový registr, může držet odpovídající hodnotu posunu prvku CurrenPřístup k přidání do jiného registru, který obsahuje základní adresu, jako je registr segmentu dat. To může usnadnit dokončení postupů, jako je kopírování obsahu nulově zakončeného řetězce ze zdrojového umístění do cílového řetězce.
Dalším použitím pro indexový registr může být uchování informací o smyčkách a jiných pultech. Některé systémové architektury upřednostňují použití indexového registru k držení počtu iterací, ke kterým došlo ve smyčce, i když jindy lze použít jakýkoli registr. Některé pokyny pro sestavení se navíc spoléhají konkrétně na registry zdrojových a cílových indexů pro provádění určitých operací, jako je například čtení blokové paměti nebo psaní, jak by mohlo být provedeno pro odeslání informací na obrazovku.