Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metodichka_Kozin.doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
17.36 Mб
Скачать

1.5. Выбор системы команд специализированной эвм

П ри выборе системы команд будем исходить из того, что считаются заданными адресность команд, наличие или отсутствие признака засылки способ адресации внутренней памяти и набор операций, выполняемых АЛУ. С помощью операций этого набора, по алгоритму решаемой процессором задачи составляется в содержательной форме программа работы процессора. При ее составлении используется какая-либо форма представления команд с явным наименованием операций, необходима посылочные операции, переходы, операции ввода-вывода и системные операции. Программа может быть составлена не единственным способом. В окончательном варианте нужно стремиться к тому, чтобы суммарное количество обращений к ОП было минимальным.

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

Рассмотрим процесс выбора системы команд на конкретных примерах для набора операций АЛУ, полученного в разд. 1.4.

Одноадресная система команд без признака засылки. Пусть внутренняя память процессора состоит из итогового регистра RG в АЛУ. Результат каждой основной операции остается в RG и может служить операндом следующей операции. Основные операции над двумя операндами выполняются по пр­вилу

RG:=RG*ОП[A] (I .I)

где * - обозначение операции; ОП[A] - ячейка ОП с номером A, представляющая второй операнд.

Для записи команд введем следующую символику.

Обозначение

N. Наименование операции . X (1.2)

будем использовать для команд, соответствующих большинству типов операций. Во всех случаях N означает здесь порядковый номер команды в программе. Для основных операций над двумя операндами под X понимается второй операнд, для команды загрузка - загружаемый операнд, для команды записи - записываемый в ОП результат предыдущей операции, для команд ввода-вывода соответственно вводимая и выводимая переменные, для безусловного перехода (БП) - порядковый номер команды, к которой осуществляется переход, для условного перехода (УП) X также означает порядковый номер команды, к которой осуществляется переход, но в наименование операции включается и условие перехода, следующее за символом УП. В командах соответствующих основным операциям над одним операндом, символ X справа от наименования операции отсутствует. Если в основной операции над двумя операндами одним из операндов является константой она должна быть введена в ОП до начала работы по алгоритму.

Используя эти обозначения, для алгоритма, заданного на рис 1.3- 1.б, можно составить следующую программу:

Из этой программа легко находим, что система команд ЭВМ должна состоять из нульадресных и одноадресных команд.

В программе вместо одноадресных команд с номерами 26 и 35 можно использовать нульадресную команду N. Сложение с I.

Одноадресная система команд с признаком засылки. Внутренняя память и в этом случае пусть состоит только из итогового регистра RG в АЛУ, но результат каждой основной операции в зависимости от значения признака засылки (ПЗ) либо остается в RG , либо записывается в ОП. Будем считать, что основные операции над двумя операндами при ПЗ=О выполняются по правилу (I.I), а при ПЗ=1 по правилу

ОП[A]:=RG*ОП[А]

Для основных операций, выполняемых над одним операндом, операнд находится в RG, а результат при П3=0 остается в RG , а при П3=1 записывается в ОП по адресу, указанному в команде. Содержимое RG при этом не изменяется.

При записи команд после слов "Наименование операции" перед символом .X в (1.2) введем символ. ПЗ. В командах, соответствующих основным операциям над одним операндом, последним в команде теперь может быть как значение символа X , так и значение признака ПЗ.

Для алгоритма, заданного на рис 1.3-1.6, при этих предположениях можно составить следующую программу:

Из программы следует, что система команд ЭВМ должна содержать одну нульадрсную и одноадресные команды, имеющие модификации, определяемые значением признака засылки.

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

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

Двухадресная система команд без признака засылки. Основные операции над двумя операндами в этом случае выполняются обычно по правилу

ОП[A1]:=ОП[A1]*ОП[A2]

до A1 -первый адрес в команде; А2 - второй адрес. Считаем, что внутренняя память процессора отсутствует. Для основных операций над одним операндом операнд берется из ячейки ОП[A1], Туда же записывается и результат операции.

При двухадресной системе команд бывает удобно в качестве одной и посылочных операций использовать операцию пересылки. Эта операция заключается в том, что в ячейку ОП[A1] записывается содержимое ячейки ОП[A2], причем в ячейке ОП[A2] содержимое не изменяется.

Обозначение

N. Наименование операции .X , Y (1.3)

будем использовать для всех типов команд. Символы N и «Наименование операции» имеют здесь то же самое значение, что и для одноадресных команд, X является первым операндом и результатом операции, Y - второй операнд. Если второй операнд в операции не участвует, вместо Y" будем ставить прочерк.

При этих условиях для алгоритма, заданного на рис 1.3-1,6, получим следующую программу:

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

Двухадресная система команд с признаком засылки. Пусть внутренняя память состоит из итогового регистра RG в АЛУ. Тогда возможны четыре модификации

основных операций над двумя операндам, каждая из которых определяется соответствующим значением ПЗ. Для основных операций, выполняемых над одним операндом, операнд находится в RG, е результат остается в RG при ПЗ=3 и записывается в ОП [A1] при ПЗ=4. Содержимое RG при этом не изменяется.

Как и в случае одноадресных команд, ПЗ помещается в выражении (1.3) между символами "Наименование операции" и Х и отделяется от них точкой.

В этом случае для алгоритма, представленного на рис 1. 3-1.6, программа имеет следующий вид:

Этой программе соответствует система команд, содержащая нульадресные, одноадресные и двухадресные команды.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]