Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
презентации акс / Система команд компьютера.ppt
Скачиваний:
48
Добавлен:
26.02.2016
Размер:
55.3 Кб
Скачать

Система команд компьютера.

Режимы адресации и форматы команд

Адресация.

Непосредственный

Прямой

Косвенный

Регистровый

Косвенный через регистр

Со смещением

Стековый

Непосредственный

Команда

Операнд

Значение операнда (О) = содержимому адресного поля в коде команды (А)

Прямой

Команда

Содержимое адресного поля в

коде

команды Память

Операнд

Исполнительный адрес ячейки, в которой находится операнд (ЕА) = содержимому адресного поля в коде команды (А)

Косвенный

 

Команда

 

 

 

 

 

 

 

 

 

 

 

 

 

Содержимое адресного поля в коде команды

 

 

 

 

 

 

 

 

 

 

 

Исполнительный адрес ячейки,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Память

в которой находится операнд (ЕА) =

 

 

 

 

 

 

 

 

 

(содержимому адресного поля в коде

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Операнд

 

 

 

команды (А))

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Регистровый

R

операнд

Регистры

R- содержимое адресного поля в коде команды, которое ссылается на определенный регистр процессора

Исполнительный адрес ячейки, в которой находится операнд (ЕА) =

содержимому адресного поля в коде команды, которое ссылается на

определенный регистр процессора (R)

Косвенный через регистр

ЕА=(R)

Исполнительный адрес ячейки, в которой находится операнд (ЕА) = (содержимому адресного поля в коде команды, которое ссылается на определенный регистр процессора (R))

R

Память

операнд

Регистры

R- содержимое адресного поля в коде команды, которое ссылается на определенный регистр процессора

Со смещением

команда

R A

+

регистры

ЕА=А+(R)

Исполнительный адрес ячейки, в которой находится операнд (ЕА) =

содержимое адресного поля в коде команды

+

(содержимому адресного поля в коде команды,

которое ссылается на определенный регистр процессора (R))

R - содержимое адресного поля в коде команды, которое ссылается на определенный регистр процессора A- содержимое адресного поля в коде команды

Адресация со смещением:

Относительная адресация - неявно указываемым регистром является счетчик программы (PC), т.е. для вычисления исполнительного адреса суммируются содержимое адресного поля команды и адрес текущей команды.

Адресация через регистр базы - содержимое полей команды интерпретируется следующим образом: указанный регистр содержит адрес в памяти., а адресное поле - смещение относительно этого адреса

Режим адресации через регистр базы также учитывает свойство локализации ссылок, и является средством сегментации памяти -

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

Индексная адресация - содержимое адресного поля указывает адрес в оперативной памяти, а содержимое указанного в команде регистра содержит положительное смещение относительно этого адреса.

Индексная адресация

Автоиндексация - автоматическое приращение регистров выполняется неявно при каждом обращении.

Автоиндексация с положительным приращением - в качестве индексного регистра используется любой регистр общего назначения , операция автоиндексации специфицируется отдельным битом в коде команды

ЕА=А+(R)

Исполнительный адрес ячейки, в которой находится операнд (ЕА) = содержимое адресного поля в коде команды + (содержимому адресного поля в коде команды, которое ссылается на определенный регистр процессора (R))

R---(R) + 1

Постиндексация - EA=(A) +(R) Сначала содержимое адресного поля используется для извлечения адреса их памяти, а затем полученный адрес индексируется содержимым индексного регистра.

Преиндексация - ЕА = (А+(R)) Сначала, как при обычной индексной адресации, к содержимому адресного поля прибавляется содержимое индексного регистра, но результат используется не как исполнительный адрес операнда, а как адрес ячейки , в которой находится исполнительный адрес операнда.

Стековая

команда

R

неявно

Верхняя ячейка стека

Для размещения стека в памяти резервируется специальная область.

Элементы добавляются в вершину стека таким образом,

что в каждый данный момент времени выделенная для стека область

памяти оказывается заполненной только частично. Со стеком связывается указатель адреса ячейки,

находящейся в вершине стека ( указатель стека).