ВУЗ:
Составители:
Команды ветвления обеспечивают переход от текущей команды к заданной
точке программы при истинности условия. Первый байт команды содержит код
операции. Второй байт - смещение к точке перехода от текущего значения счет-
чика команд PC (то есть это команда с относительной адресацией). Смещение
указывается в количестве слов, на которое нужно перейти и процессор выполня-
ет увеличение PC на величину удвоенного смещения. Смещение рассматрива-
ется как байт со знаком, поэтому перед удвоением смещения выполняется его
приведение к формату 16-разрядного целого со знаком путем расширения знака.
При вычислении адреса перехода в PC находится продвинутый адрес, указы-
вающий на следующую команду за командой ветвления. Поскольку смещение
занимает всего один байт, длина “прыжка” по команде ветвления не может быть
более 256. Если необходимо перейти на большее расстояние, то используется
сочетание команды ветвления и команды JMP.
Мне- Код N Z V C Операция Действия
мокод
Безусловный переход и организация циклов и подпрограмм:
JMP 0001DD - - - - Безусловный переход PC = &D
SOB 077RNN - - - - Организация цикла if(--R != 0)
PC -= 2*NN
JSR 004RDD - - - - Обращение к под- *(--SP) = R,
программе R=PC, PC=&D
RTS 00020R - - - - Возврат из п/п PC=R,R=*SP++
MARK 0064NN - - - - Восстановление ука- SP = PC+2*NN
зателя стека PC = R5
R5 = *SP++
Программные прерывания:
ЕМТ 104000 из век- Прерывание для *--SP = PSW
..104377 тора cистем. программ *--SP = PC
c адресом вектора PC = *(AV)
AV = 30 PSW = *(AV+2)
TRAP 104400 - " - Прерывания пользов. то же, но адр.
..104777 вектора AV=34
IOT 000004 - - - - Прерыв. для вв/выв. AV=20
ВРТ 000003 - - - - Прерыв. трассировки AV=14
RTI 000002 из стека Возврат из прерыва- PC = *SP++
вания PSW = *SP++
RТТ 000006 из стека Возврат из прерыва- PC = *SP++
ния трассировщика PSW = *SP++
Таблица 3. Команды управления программой и прерываниями
Страницы
- « первая
- ‹ предыдущая
- …
- 14
- 15
- 16
- 17
- 18
- …
- следующая ›
- последняя »