¦ (d{16},An) ¦101 ¦ном.An ¦¦ (d{16},PC) ¦ - ¦ - ¦
+----------------+----+--------++----------------+----+--------+
¦ (d{8},An,Xn) ¦110 ¦ном.An ¦¦ (d{8},PC,Xn) ¦ - ¦ - ¦
+----------------+----+--------++----------------+----+--------+
¦ (bd,An,Xn) ¦110 ¦ном.An ¦¦ (bd,PC,Xn) ¦ - ¦ - ¦
+----------------+----+--------++----------------+----+--------+
¦([bd,An,Xn],od) ¦110 ¦ном.An ¦¦ ([bd,PC,Xn],od)¦ - ¦ - ¦
+----------------+----+--------++----------------+----+--------+
¦([bd,An],Xn,od) ¦110 ¦ном.An ¦¦ ([bd,PC],Xn,od)¦ - ¦ - ¦
L----------------+----+---------L----------------+----+--------Поле Непосредственных данных (данных, непосредственно следующих за операционным словом):
если Размер = 00, данные находятся в младшем байте слова непосредственных данных.
если Размер = 01, данные находятся в слове непосредственных данных.
если Размер = 10, данные находятся в двух словах непосредственных данных.
ANDI Конъюнкция непосредственных данных ANDI
TO CCR с кодом условия TO CCR
------------------------------------------------------Операция: Непосредственные данные & CCR > CCR
Синтаксис: ANDI #<данные>,CCR
Атрибуты: Размер=(Байт)
Описание:
Вычисляется конъюнкция Непосредственных данных и кодов условия; результат помещается в младший байт регистра состояния.
Коды условия:
X N Z V C
----T---T---T---T---¬
¦ * ¦ * ¦ * ¦ * ¦ * ¦
L---+---+---+---+---N 0, если 3-й бит <данных> равен 0; иначе не меняется
Z 0, если 2-й бит <данных> равен 0; иначе не меняется
V 0, если 1-й бит <данных> равен 0; иначе не меняется
C 0, если 0-й бит <данных> равен 0; иначе не меняется
X 0, если 4-й бит <данных> равен 0; иначе не меняется
Формат команды:
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 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 1 ¦ 0 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 1 ¦ 1 ¦ 0 ¦ 0¦
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--+
¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ Байт данных (8 бит) ¦
L---+---+---+---+---+---+---+---+------------------------------ANDI Конъюнкция непосредственных данных с регистром ANDI
TO SR состояния (привилегированная команда) TO SR
----------------------------------------------------------Операция: Если режим супервизора, то Источник & SR > SR, иначе TRAP
Синтаксис: ANDI #<данные>,SR
Атрибуты: Размер=(Слово)
Описание:
Вычисляется конъюнкция Непосредственных данных с содержимым регистра состояния; результат помещается в регистр состояния. Подвержены изменениям все биты регистра состояния.
Коды условия:
X N Z V C
----T---T---T---T---¬
¦ * ¦ * ¦ * ¦ * ¦ * ¦
L---+---+---+---+---N 0, если 3-й бит <данных> равен 0; иначе не меняется
Z 0, если 2-й бит <данных> равен 0; иначе не меняется
V 0, если 1-й бит <данных> равен 0; иначе не меняется
C 0, если 0-й бит <данных> равен 0; иначе не меняется
X 0, если 4-й бит <данных> равен 0; иначе не меняется
Формат команды:
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 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 0 ¦ 1 ¦ 0 ¦ 0 ¦ 1 ¦ 1 ¦ 1 ¦ 1 ¦ 1 ¦ 0 ¦ 0¦
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--+
¦ Слово данных (16 бит) ¦
L--------------------------------------------------------------ASL , ASR Арифметический сдвиг ASL , ASR
--------------------------------------------------------Операция: Приемник сдвигается_на <количество_позиций> >
> Приемник
Синтаксис: ASd Dx,Dy
ASd #<данные>,Dy
ASd <иа>
где d - направление, R или L
Атрибуты: Размер=(Байт,Слово,Длинное слово)
Описание:
Биты Приемника арифметически сдвигаются в указанном направлении (L - влево, R - вправо). Бит переноса (код условия С) устанавливается равным последнему вытесненному при сдвиге биту операнда. При сдвиге регистра данных <количество_позиций> задается одним из двух способов:
1. Непосредственно в команде, в диапазоне 1 - 8.
2. В регистре данных (содержимое регистра берется по модулю 64).
Размер операндов - байт, слово и длинное слово. Содержимое памяти может быть сдвинуто только на 1 бит, размер операнда в этом случае есть слово.
В случае команды ASL операнд сдвигается влево на <количество_позиций>. Вытесняемые старшие биты попадают одновременно в биты переноса и расширения (С и Х) кода условия, младшие биты заполняются нулями. В бите переполнения V отмечается, случалась ли перемена знака операнда во время сдвига.
------¬ -------------¬ ------¬
¦ C <--T--+ Операнд <------+ 0 ¦
L------ ¦ L------------- L-----ASL: ¦
------¬ ¦
¦ X <--L-----В случае команды ASR операнд сдвигается вправо на <количество_позиций>. Вытесняемые младшие биты попадают одновременно в биты С и Х кодов условия. Бит знака
(MSB) воспроизводится в освобождаемых старших битах операнда.
------T------------¬ ------¬
----> MSB ¦ Операнд +--T---> C ¦
¦ L--T--+------------- ¦ L-----ASR: L------- ¦
¦ ------¬
L---> X ¦
L-----Коды условия:
X N Z V C
----T---T---T---T---¬
¦ * ¦ * ¦ * ¦ * ¦ * ¦
L---+---+---+---+---N 1, если старший бит результата равен 1; иначе 0
Z 1, если результат нулевой; иначе 0
V 1, если старший бит результата изменялся в какой-либо момент при сдвиге; иначе 0
C равен последнему вытесненному биту операнда. При
<количестве_позиций>=0 равен 0
Х равен последнему вытесненному биту операнда. При
<количестве_позиций>=0 не изменяется.
Формат команды для сдвига регистра:
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.