Интерпретирование команды

25-08-2013, 17:53
Просмотров: 1698
Для интерпретирования (выполнения) команды выполняются следующие действия:
1. Блоком 1 выполняется замена на адрес ячейки памяти, в которую записана первая команда программы моделируемой машины. Это будет «счетчик команд» для моделируемой машины.
2. Блок 2 разбивает пятиразрядный код команды на двухразрядный код операции и на трехразрядный целочисленный адрес команды.
3. Блоком 3 (блоком условной передачи управления) управление передается на подпрограмму, соответствующую коду операции.

Интерпретирование команды


4. Блоками 4, 5, 6, 7 и 10 (подпрограммами моделирующей машины) выполняется одна из тех операций, которые обозначены в соответствующей команде, при этом в качестве сумматора моделируемой машины используется одна из ячеек запоминающего устройства моделирующей машины.
5. По выполнении соответствующей подпрограммы блоком добавляется единица к значению «счетчика команды» в соответствии с тем, как это обычно делается на одноадресных машинах. Затем происходит передача управления на блок 2.
6. В случае если команда моделируемой программы содержала код операции (05) (сравнение с нулем), управление с блока 3 передается на блок 8. В этом блоке выполняется сравнение с 0 содержимого ячейки моделирующей машины, играющей роль сумматора моделируемой. Если это число больше или равно 0, управление передается на блок 11, а затем на блок 2. Если сравниваемое число меньше 0, то «адрес следующей команды» засылается блоком 9 в «счетчик команд» и управление передается на блок 2.
Дана одноадресная вычислительная машина с очень простой (только шесть) системой команд. Две цифры в скобках, стоящие слева, - код операции. Ввод одного числа из внешнего устройства ввода – вывода, прибавление содержимого ячейки к содержимому сумматора, вычитание содержимого ячейки из содержимого сумматора, запись содержимого сумматора в ячейку, сравнение содержимого сумматора с нулем.

Источник: delete-it
Автор: Николай Максименко
Опубликовано пользователем: 805 (смотреть все)
Комментарии: