Индексный регистр
В статье не хватает ссылок на источники (см. рекомендации по поиску). |
Индексный регистр — регистр процессора в современных ЦПУ, используемый для автоматического изменения адреса операнда во время исполнения программы.
Общее назначение
[править | править код]Обычно индексный регистр используется для выполнения операций с индексными массивами.
Индексный регистр часто используется для косвенной адресации. Перед выполнением инструкции любая её часть, обычно адресная, может быть модифицирована прибавлением числа, содержащегося в индексном регистре. Например, исполнительный адрес в современном процессоре может формироваться как сумма базового, индексного и относительного адресов, хранящихся в индексном регистре.
Количество индексных регистров в ЦПУ может достигать нескольких десятков. Их быстродействие, обычно, на порядок выше быстродействия основной оперативной памяти. Индексный регистр повышают производительность ЦПУ, уменьшает объём программы, осуществляя автоматическую переадресацию одновременно с другими операциями.
Индексные регистры стали стандартной частью процессора во втором поколении компьютеров (примерно 1955-1964 годах).
Индексные регистры в процессорах архитектуры x86
[править | править код]В архитектуре x86 индексные регистры называются SI и DI. При базово-индексной адресации их содержимое может суммироваться с содержимым регистра BX.
Индексный регистр-источник SI применяется в качестве указателя адреса байта или слова в таких строковых командах, как LODS (загрузить строку), CMPS (сравнить строку), MOVS (переслать строку).
Индексный регистр-приёмник DI используется как указатель назначения для адреса байта или слова в строковых командах, таких как SCAS (сканировать строку), CMPS, MOVS, STOS (записать строку).
См.также
[править | править код]Это заготовка статьи об информационных технологиях и вычислительной технике. Помогите Википедии, дополнив её. |