Реализация адресации операндов «базирование способом суммирования»

В команде адресный код АК разделяется на две составляющие: АБ – адрес регистра регистровой памяти, в котором хранится база Б, C – код смещения относительно базового адреса. Максимальная адресуемая емкость ОП определяется разрядностью регистровой памяти.

С помощью метода относительной адресации удается получить перемещаемый программный модуль, который одинаково выполняется процессором независимо от адресов, в которых он расположен. При входе в модуль начальный адрес программного модуля (база) загружается в базовый регистр. Все остальные адреса программного модуля формируются через смещение относительно начального адреса модуля. Таким образом, одна и та же программа может работать с данными, расположенными в любой области памяти, без перемещения данных и без изменения текста программы только за счет изменения содержания всего одного базового регистра.

Реализация адресации операндов «базирование способом суммирования» - student2.ru

Реализация адресации операндов «базирование способом совмещения» составляющих исполнительного адреса (конкатенации)

Для увеличения емкости адресной ОП без увеличения длины адресного поля команды можно использовать для формирования исполнительного адреса совмещение кодов базы и смещения. При совмещении кодов базы и смещения разрядность исполнительного адреса = разрядность базы + разрядность смещения.

Реализация адресации операндов «базирование способом суммирования» - student2.ru

Реализация индексной адресации операндов

Для работы программ с массивами, требующими однотипных операций над элементами массива, удобно использовать индексную адресацию. В этом случае адрес i-го операнда в массиве определяется как сумма начального адреса массива (задаваемого полем смещения С) и индекса И, записанного в одном из регистров регистровой памяти, называемом теперь индексным регистром. Адрес индексного регистра задается в команде полем адреса индекса – АИН (аналогично АБ). Исполнительный адрес ОП = Адрес базы + адрес индекса + адрес смещения.

Реализация адресации операндов «базирование способом суммирования» - student2.ru

Развитие CISC-системы команд x86 (по годам)

Наши рекомендации