Схема выполнения команд
Все бинарные операции (т.е. те, которые имеют два аргумента и один результат) выполняются в нашей учебной машине по схеме: <A1>:=<A2>Ä<A3> (Ä – любая бинарная операция). Каждая команда выполняется по следующему алгоритму:
1. RK := <RА>; чтение очередной команды на регистр команд УУ.
2. RА := RА + 1.
3. Выполнение операции, заданной в коде операции (КОП). При ошибочном КОП выполняется Err := 1.
4. if (Err=0) and (КОП<>СТОП) then goto 1 else КОНЕЦ.
Теперь нам осталось определить условие начала работы программы. Для загрузки программы в память и формирования начальных значений регистров в устройстве управления на устройстве ввода имеется специальная кнопка ПУСК ( J ). При нажатии этой кнопки устройство ввода самостоятельно (без сигналов со стороны устройства управления) производит следующую последовательность действий:
1. Производится ввод расположенного на устройстве ввода массива машинных слов в память, начиная с первой ячейки; этот массив машинных слов заканчивается специальным признаком конца массива.
2. RА := 1
3. w := 0
4. Err := 0
Далее всё готово для автоматической работы центрального процессора по загруженной в память программе. Таким образом, мы полностью определили условия начала и конца работы нашей алгоритмической системы (вспомним курс "Алгоритмы и алгоритмические языки").
Таблица 3.1. Команды учебной машины. | |
КОП | Операция и её мнемоническое обозначение |
СЛВ – сложение вещественных чисел | |
СЛЦ – сложение целых чисел | |
ВЧВ – вычитание вещественных чисел | |
ВЧЦ – вычитание целых чисел | |
УМВ – умножение вещественных чисел | |
УМЦ – умножение целых чисел | |
ДЕВ – деление вещественных чисел | |
ДЕЦ – деление целых чисел (то же, что и divв Паскале) | |
МОД – остаток от деления (то же, что и modв Паскале) | |
ПЕР – пересылка: <A1>:=<A3> | |
ЦЕЛ – вещественное в целое: <A1>:=Round(<A3>) | |
ВЕЩ – целое в вещественное: <A1>:=Real(<A3>) | |
БЕЗ – безусловный переход: goto A2, т.е. RA:=A2 | |
УСЛ – условный переход: Case w of0: goto A1; 1: goto A2; 2: goto A3 end | |
СТОП – остановка выполнения программы | |
ВВВ – ввод A2 вещественных чисел в память, начиная с адреса A1 | |
ВЫВ – вывод вещественных чисел, аналогично ВВВ | |
ВВЦ – ввод целых чисел, аналогично ВВВ | |
ВЫЦ – вывод целых чисел, аналогично ВВВ |
По своей архитектуре наша учебная машина очень похожа на первые ЭВМ, построенные в соответствии с принципами фон Неймана, например, на отечественную ЭВМ СТРЕЛА [3], выпускавшуюся в средине прошлого века.
Дата добавления: 2015-10-05; просмотров: 879;