Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Символическое представление команды. Критерии выбора формата команд



Двоичное представление неудобно в программировании.

Компоненты команд чаще представляют символической мнемоникой.

Пример мнемокодов операций:

ADD сложение (addition); SUB вычитание (subtraction); MUL умножение (multiplication); DIV деление (division); LOAD загрузка эл-та данных из памяти (loading);

STOR сохранение эл-та данных в памяти (storing); MOV пересылка в памяти (moving).

Критерии выбора формата команд:

- общее число различных команд;

- общая длина команды;

- тип полей команды (фиксированной или переменной длины) и их длина;

- адресуемость и способы адресации;

- простота декодирования;

- стоимость оборудования для декодирования и исполнения команд.

Адресная часть команды компьютера общего назначения. Варианты реализации.

Адресность – количество адресов, включенных в адресную часть команды.

Адресация – интерпретация адресного поля с целью нахождения операнда.

Способы задания адреса:

- явный;

- неявный – адрес операнда или результата в явном виде не представлен, но подразумевается (напр., операнду выделяется «стандартное» место).

Длина адресной части команды должна быть достаточной для предоставления доступа ко всем адресуемым ячейкам, содержащим операнды. В общем случае: , где Ki – кол-во ячеек, в которых может располагаться i-й операнд.

Варианты реализации адресной части:

- четырехадресный формат (адреса двух операндов, результата и следующей команды; «-»избыточность информации);

- трехадресный формат (адреса двух операндов, результата; «-» необходимо вводить команды управления потоком команд);

- двухадресный формат (адреса двух операндов. Результат записывается в один из операндов; «-» один операнд теряется);

- одноадресный формат (адрес одного операнда. Адрес второго операнда и результата подразумевается);

- полутораадресный формат (адрес одного операнда; второй операнд – в регистре, за счет этого адресная часть короче.)

- нульадресный формат (адресная часть отсутствует; операнд либо отсутствует, либо используются подразумеваемые адреса/операнды).

12. Режимы адресации: непосредственный, прямой, регистровый.

EА - исполнительный адрес ячейки, содержащей операнд;

O - значение операнда;

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

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

Непосредственная адресация: О = А. Операнд задается непосредственно в команде. Пример ADD 5 (нет дополнительных операций с памятью, повышается скорость выполнения команд, диапазон операндов ограничен).

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

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

13. Адресация со смещением: общие принципы, относительная адресация, адресация через регистр базы.

Основной принцип адресации со смещением: адрес операнд формируется сложением базы адресации и смещения. ЕА = А + (R)

В коде команды два адресных поля:

- А – используется непосредственно;

- R – указывает на регистр, содержимое которого суммируется с А.

Относительная адресация: EA = A + (PC)

PC – неявно адресуемый регистр.

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

Адресация через регистр базы – базовая адресация: ЕА = А + (R). Регистр базы R задается явно или подразумевается (может существует специальный базовый регистр).

14. Стековая адресация: принципы реализации, виды стека, управление стеком, стек-ориентированные операции.

Стек - упорядоченное множество элементов данных, при каждом обращении к которому может быть доступен только один из элементов. Принцип LIFO Доступный элемент – вершина стека.

Элементы могут добавляться только в вершину стека и удаляться только из вершины стека. Адресация – неявная. Количество элементов (длина стека) – переменное.

Возможное расположение стека:

- выделенная область оперативной памяти;

- регистровая память процессора.

Элементы стека:

- указатель стека – адрес вершины стека (текущего верхнего элемента); модифицируется при обращении к стеку (добавление нового элемента или удаление элемента из вершины);

- адрес основания стека – адрес «дна» стека – начальный адрес области памяти, выделенной под стек;

- граничный адрес стека – предельный адрес области памяти, выделенной под стек.

Стек-ориентированные операции:

- PUSH – добавление элемента в вершину стека;

- POP – удаление элементов из вершины стека;

- унарная операция – выполнение операции с элементом, находящимся в вершине стека. Результат замещает операнд и попадает в вершину стека.

- бинарная операция – выполнение операции с двумя верхними элементами стека; операнды из стека удаляются; результат помещается в вершину стека.





Дата публикования: 2015-01-24; Прочитано: 696 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...