Программирование на JAVA
Меню :
Стартовая
Основы программирования
Программирование на JAVA
Программирование на C++
Программирование на Pascal
Задачи по программированию
Навигация
Выполнение команды Load X(R1),R2, предназначенной для загрузки данных из памяти, занимает пять тактов (рис. 9.5). Подобную команду
Load (R1),R2
способен выполнить 4-ступенчатый конвейер, поскольку она не требует вычисления адреса. Доступ к памяти может осуществляться на ступени E. В случае использования более сложного режима адресации при доступе к операнду не исключена необходимость в нескольких обращениях к памяти. Например, команда
Load (X(R1)),R2
может быть выполнена так, как показано на рис. 9.6, а, если считать, что смещение индекса, Х, задано в слове команды. После вычисления адреса на такте 3 процессору нужно дважды обратиться к памяти — прочитать слово по адресу X+[R1] на такте 4, а также слово по адресу [X+[R1]] на такте 5. Если содержимое регистра R2 является исходным операндом следующей команды, выполнение команды будет задержано на три такта. Эту цифру можно сократить до двух за счет продвижения операнда.
Для выполнения такой же операции загрузки с использованием только простейших адресных режимов потребуется несколько команд. На компьютере, где допускается использование трех операндов, это могут быть такие команды:
<< назад вперед >>