Атрибуты: Размер не используется
Описание:
Информация о состоянии процессора из стекового окна исключения загружается в процессор. Объем восстанавливаемой информации определяется полем формата стекового окна в слове формата/смещения.
Коды условия: загружаются из соответствующего слова стека.
Формат команды:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
----T---T---T---T---T---T---T---T---T---T---T---T---T---T---T--¬
¦ 0 ¦ 1 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 1 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 1 ¦ 0 ¦ 0 ¦ 1 ¦ 1¦
L---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--Слово формата/смещения (в стековом окне).
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
----------------T---T---T--------------------------------------¬
¦ Формат ¦ 0 ¦ 0 ¦ Смещение вектора ¦
L---------------+---+---+--------------------------------------Поля команды:
4-битное поле Формата определяет объем восстанавливаемой информации:
0000 - короткий формат. С вершины стека удаляются 4
слова. Значения регистра состояния и программный счетчик загружаются из стекового окна.
0001 - формат временного окна. С вершины стека удаляются 4 слова. Из стекового окна загружается только регистр состояния, после чего процессор продолжает выполнять команду RTE, используя вершину активного системного стека. Этим форматом отмечается дно стека прерываний.
0010 - формат программного исключения . С вершины стека удаляются 6 слов. Первые 4 слова интерпретируются как короткий формат, остальные два слова отбрасываются.
1000 - длинный формат MC68010. В MC68020 вызывает исключение ошибки формата.
1001 - формат внутрикомандного исключения сопроцессора. С вершины стека удаляются 10 слов. Возобновляется выполнение команды сопроцессора.
1010 - короткий формат MC68020. С вершины стека удаляются 16 слов. Возобновляется выполнение прерванной команды.
1011 - длинный формат MC68020. С вершины стека удаляются 46 слов. Возобновляется выполнение прерванной команды.
Любые другие коды вызывают исключение ошибки формата.
RTM Возврат из модуля RTM
------------------------------------------------------Операция: Восстановление состояния модуля, сохраненного в стеке
Синтаксис: RTM Rn
Атрибуты: Размер не используется
Описание:
Состояние модуля, ранее сохраненное в стековом окне модуля, загружается с вершины стека. Затем указатель стека вызывающей программы увеличивается на суммарную длину аргументов, хранившуюся в стековом окне модуля.
Коды условия: загружаются из соответствующего слова стека.
Формат команды:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
----T---T---T---T---T---T---T---T---T---T---T---T---T---------¬
¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 0 ¦ 1 ¦ 1 ¦ 0 ¦ 0 ¦Д/А¦ Регистр ¦
L---+---+---+---+---+---+---+---+---+---+---+---+---+---------Поля команды:
Поле Д/А задает вид регистра-указателя области данных вызывающего модуля:
0 - указатель является адресным регистром.
1 - указатель является регистром данных.
Поле Регистра определяет номер регистра-указателя области данных вызывающего модуля, в который будет загружено ранее сохраненное значение. При задании регистра A7 (SP) восстановленное значение теряется, будучи замещено значением стекового указателя, которое тот примет по завершении всех операций со стеком.
RTR Возврат и восстановление кодов условия RTR
-----------------------------------------------------Операция: (SP) >CCR; SP+2 >SP; (SP) >PC; SP+4 >SP
Синтаксис: RTR
Атрибуты: Размер не используется
Описание:
Из стека извлекаются и загружаются значения кодов условия и программного счетчика. Предыдущие значения теряются. Старший (супервизорный) байт регистра состояния не меняется.
Коды условия: загружаются из соответствующего слова стека.
Формат команды:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
----T---T---T---T---T---T---T---T---T---T---T---T---T---T---T--¬
¦ 0 ¦ 1 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 1 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 1 ¦ 0 ¦ 1 ¦ 1 ¦ 1¦
L---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--RTS Возврат из подпрограммы RTS
--------------------------------------------------------Операция: (SP) >PC; SP+4 >SP
Синтаксис: RTS
Атрибуты: Размер не используется
Описание:
Из стека извлекается значение программного счетчика. Его предыдущее значение теряется.
Коды условия: не меняются.
Формат команды:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
----T---T---T---T---T---T---T---T---T---T---T---T---T---T---T--¬
¦ 0 ¦ 1 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 1 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 1 ¦ 0 ¦ 1 ¦ 0 ¦ 1¦
L---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--SBCD Расширенное десятичное вычитание SBCD
----------------------------------------------------Операция: Приемник - Источник - X > Приемник
(десятичн) (десятичн)
Синтаксис: SBCD Dx,Dy
SBCD -(Ax),-(Ay)
Атрибуты: Размер=(Байт)
Описание:
Из операнда-Приемника вычитается сумма операнда-Источника и бита расширения; результат помещается в операндПриемник. Используется двоично-десятичная арифметика.
Операнды могут адресоваться двумя различными способами:
1. Операнды содержатся в регистрах данных, указанных в команде.
2. Операнды адресуются с предекрементированием с помощью адресных регистров, указанных в команде.
Операция выполняется только над байтовыми операндами.
Коды условия:
X N Z V C
----T---T---T---T---¬
¦ * ¦ U ¦ * ¦ U ¦ * ¦
L---+---+---+---+---N неопределен
Z 0, если результат не равен нулю;
иначе не меняется
V неопределен
C 1, если произошел десятичный заем; иначе 0
X равен C.
ЗАМЕЧАНИЕ
Обычно код Z программно устанавливается в 0 перед началом некоторой операции, что позволяет обнаружить нулевой результат после завершения последовательности вычислений с многократной точностью.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.