КОМАНДА ПЕРЕХОДА (JAMP)
Команды перехода также выполняются за один машинный цикл, но способ их выполнения будет отличаться от способа выполнения команд обращения к регистру.
… …
Команда JUMP 150 хранится в ячейке памяти с адресом 100. На протяжении одного машинного цикла выполняются следующие операции:
1. Адрес 100 передается из программного счетчика PC в
регистр адреса МА.
2. Регистр адреса МА выбирает ячейку памяти. Содержимое
ячейки памяти читается в регистр данных MD.
3. Теперь в регистре данных находится команда, которая
должна выполняться (JUMP 150). Команда состоит из кода операции
JUMP и адреса 150.
4. Код операции пересылается в регистр команды IR, где команда декодируется и подготавливаются необходимые цепи, при упрощенном описании этой подготовки инициируется некоторый импульс перехода, который перебрасывает ключ из обычного положения +1 в нижнее положение.
5. Адресная часть команды (150) пересылается в программный счетчик PC. Следующая команда выбирается по адресу, хранящемуся в программном счетчике PC, т.е. по адресу 150.
АДРЕСНЫЕ КОМАНДЫ
В адресной команде или команде с обращением к памяти один из операндов выбирается из памяти. При этом ЭВМ должна дважды обращаться к памяти, первый раз для выборки команды, второй - для получения операнда. Для этого необходимы два машинных цикла. Во время первого цикла машина находится в фазе выборки, во время второго - в фазе выполнения.
… …
Сложить с
содержимым
аккумулятора
| |
Выборка Выполнение
Команда ADD 105 хранится в ячейке памяти с адресом 100.
В течение двух машинных циклов выполняются следующие операции.
Выборка.
1. Адрес 100 передается из программного счетчика PC в регистр адреса МА.
2. Содержимое счетчика PC увеличивается на единицу.
3. По адресу в регистре МА выбирается ячейка памяти. Ее содержимое считывается в регистр данных МD.
4. Теперь в регистре данных МD находится новая команда ADD 105. Эта
команда состоит из кода операции ADD и адресной части 105.
5. Код операции пересылается в регистр IR, где команда декодируется и
происходит подготовка цепей, необходимых для выполнения команды.
6. Адресная часть команды (105) передается из регистра МD в регистр адреса МА.
Выполнение.
1. По адресу хранящемуся в регистре МА, выбирается ячейка памяти.
Содержимое ячейки считывается в регистр МD.
4. Теперь регистр МD содержит новый операнд 0071.
5. Подготовительные цепи выполняют команду ADD. При этом число 0071
будет суммироваться с предшествующим содержимым аккумулятора
(0004), а результат будет запоминаться в аккумуляторе.
СТРАНИЧНО-ОТНОСИТЕЛЬНАЯ АДРЕСАЦИЯ
Адресная команда состоит из трех частей: кода операции, разрядов признаков, смещения.
При выполнении команд со странично-относительной адресацией регистр адреса МА и программный счетчик PC делятся на две части каждый.
МА: МА1 (5 разрядов) и МА2 (7 разрядов)
PC: PC1 (5 разрядов) и РС2 (7 разрядов).
Рассмотрим два случая, отличающиеся значением разряда признака странично-относительной адресации.
Разряд признака относительной адресации равен 0:
Память MA PC
В этом случае исполнительный адрес равен смещению. Команда адресуется к нулевой странице памяти.
Чтобы получить исполнительный адрес, смещение 20 передается в регистр МА2, а 0 – в регистр МА1.
Разряд признака относительной адресации равен 1:
Память MA PC
В этом случае исполнительной адрес равен смещению + адрес начала страницы, на которой находится команда. Адрес команды находится в программном счетчике PC. При чем PC1 используется для подсчета страниц, a PC2 – для указания ячеек внутри страницы.
Если команда находится в ячейке 405, ее адрес записывается в программном счетчике PC . Чтобы получить исполнительный адрес, смещение 20 пересылается в МА2, а содержимое PC1 – в МА1. Таким образом выбирается ячейка 20 относительно адреса 400 (420-ая ячейка памяти).
Дата добавления: 2015-12-01; просмотров: 603;