Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Адресация данных

 

Любая машинная команда – машинный код, который определяет:

1. Операцию.

2. Указывает на данные.

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

Способы адресации являются одним из основных архитектурных признаков. В настоящее время известно более двух десятков различных способов адресации и их модификации. Все известные способы адресации данных разделены на две большие группы.

1. Прямые способы адресации.

При прямых способах адресации либо накопительный адрес операнда, либо сам операнд, находятся непосредственно по адресному коду без всякого преобразования.

Существует несколько прямых способов адресации:

1.1. Неявная адресация. В таких командах явного адресного поля нет (безадресная команда). Операнд задается кодом операции. Обычно такой способ адресации используется для фиксированных программно доступных регистров процессора (аккумуляторный принцип).

1.2. Непосредственная адресация. В адресном поле фактически указывается не адресный код, а сам операнд. Этот способ не требует дополнительных обращений к памяти за операндами, но адресное поле должно иметь длину операнда. Обычно применяется для задания констант вычисления.

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

 

2. Не прямые способы адресации.

Не прямые способы адресации требуют выполнения процедур формирования физического адреса по адресному коду, для этого в ЭВМ встраивается специальный адресный механизм.

Все современные ЭВМ используют массу способов непрямой адресации. Они позволяют обеспечить мобильность программных средств:

2.1. Базирование (относительная адресация). Процедура формирования исполнительного адреса: Аисп – Абаза + <смещение>. Для реализации этого способа в ЭВМ выделяются специальные ячейки, которые выполняют функции базовых регистров. В общем случае в ЭВМ может быть несколько базовых регистров. Тогда адресный код включает в себя два поля:

В Disp

B – адрес регистра базирования; Disp – смещение.

Базирование как способ адресации требует наличия сумматора в адресном устройстве.

Любая схема базирования обеспечивает перемещение программ по памяти ЭВМ.

2.2. Косвенная адресация. При косвенной адресации адресный код в команде содержит не адрес самого операнда, а содержит адрес памяти, где хранится адрес операнда. То есть адресный код – это адрес адреса. Может использоваться и многоступенчатая косвенная адресация. Косвенная адресация позволяет без изменения самой команды обрабатывать ей различные данные, а также загружать программу в произвольное место памяти.

2.3. Автоинкрементная и автодекрементная (индексная адресация). Необходимость введения такого способа адресации вызвана задачами обработки данных, хранящихся в последовательно расположенных ячейках памяти. В тех ЭВМ, где изменение указателя адреса при обработке данных делается автоматически, там индексация называется автоинкрементной (автодекрементной). Данный способ адресации значительно упрощает программирование вычислительных циклов.

2.4. Укороченная адресация – всевозможные способы, ориентированные на уменьшение длины команды за счет сокращения адресного кода. Для современных ЭВМ укороченная адресация привела к тому, что базовые адреса, указатели косвенного адреса, указатели индексов при индексации хранятся либо в фиксированных ячейках памяти, либо в фиксированных регистрах процессора. В последнем случае в адресном поле команды задается короткий адрес регистра. Это позволяет не только сократить длину команды, но и уменьшить количество обращений к основной памяти, так как при упорядоченной адресации указатель извлекается из регистра, что гораздо быстрее. Дополнительное обращение к памяти исключается.

2.5. При использовании стековой адресации команды не имеют адресного поля (безадресные) для задания адресов операндов. Стековая адресация – очень эффективный способ и применяется в большинстве ЭВМ. Стек может реализовываться либо аппаратными, либо программными средствами. Стеком называется некоторая область памяти в общем пространстве, доступ к ячейкам этой области осуществляется с помощью указателя стека (рис. 2).

 

Рис. 2. Стековая адресация

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

В современных ЭВМ стековый механизм является одним из основных при работе с подпрограммами, а также при организации прерываний.

 

<== предыдущая лекция | следующая лекция ==>
Форматы команд | Типы машинных команд
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 1328; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.