L-------------------------------------------------------------Поле Определение регистр номер индексного регистра
D/A тип индексного регистра:
0=Dn
1=An
W/L словный/двухсловный размер индекса:
0= слово с распространенным знаком
1= длинное слово масштаб: масштабирующий множитель:
00=1
01=2
10=4
11=8
BS подавление базирования:
0=базовый регистр добавляется
1=базовый регистр игнорируется
IS подавление индексного регистра:
0=индексный операнд вычислить и добавить
1=индексный операнд игнорировать разм.BD размер базового смещения:
00=зарезервировано
01=смещение нулевой длины
10=словное смещение
11=двухсловное смещение
I/IS селектор индексирования/косвенности:
определяет совместно с битом 6 (IS) способ индексируемой/косвенной адресации операнда
Поля подавления индекса (IS) и селектора индексирования/косвенности (I/IS) совместно определяют тип косвенного обращения при полноформатной индексируемой/косвенной адресации. Кодировка и определяемая ею адресация даны в таблице 2-2.
Таблица 2-2. Тип косвенного обращения, кодируемый полями IS-I/IS
------T---------T---------------------------------------------¬
¦ IS ¦ I/IS ¦ адресация ¦
+-----+---------+---------------------------------------------+
¦ 0 ¦ 000 ¦ без использования памяти для вычисления ¦
¦ ¦ ¦ косвенного адреса ¦
¦ 0 ¦ 001 ¦ косвенная с преиндексированием и со смеще- ¦
¦ ¦ ¦ нием нулевой длины ¦
¦ 0 ¦ 010 ¦ косвенная с преиндексированием и со словным ¦
¦ ¦ ¦ смещением ¦
¦ 0 ¦ 011 ¦ косвенная с преиндексированием и с длинным ¦
¦ ¦ ¦ смещением ¦
¦ 0 ¦ 100 ¦ зарезервировано ¦
¦ 0 ¦ 101 ¦ косвенная с постиндексированием и со смеще- ¦
¦ ¦ ¦ нием нулевой длины ¦
¦ 0 ¦ 110 ¦ косвенная с постиндексированием и со слов- ¦
¦ ¦ ¦ ным смещением ¦
¦ 0 ¦ 111 ¦ косвенная с постиндексированием и с длинным ¦
¦ ¦ ¦ смещением ¦
¦ 1 ¦ 000 ¦ без использования памяти для вычисления ¦
¦ ¦ ¦ косвенного адреса ¦
¦ 1 ¦ 001 ¦ косвенная через память с смещением нулевой ¦
¦ ¦ ¦ длины ¦
¦ 1 ¦ 010 ¦ косвенная через память со словным смещением ¦
¦ 1 ¦ 011 ¦ косвенная через память с длинным смещением ¦
¦ 1 ¦ 100-111 ¦ зарезервировано ¦
L-----+---------+---------------------------------------------В Таблице 2-3 представлена кодировка способов адресации, описанных в предыдущих разделах.
Таблица 2-3. Кодирование исполнительных адресов
---------------------------------------T-------T--------¬
¦ адресация ¦ мода ¦ регистр¦
+--------------------------------------+-------+--------+
¦ Прямая регистра данных ¦ 000 ¦ рег # ¦
¦ Прямая адресного регистра ¦ 001 ¦ рег # ¦
¦ Косвенная через адресный регистр ¦ 010 ¦ рег # ¦
¦ Косвенная через адресный регистр с ¦ 011 ¦ рег # ¦
¦ постинкрементированием ¦ ¦ ¦
¦ Косвенная через адресный регистр с ¦ 100 ¦ рег # ¦
¦ предекрементированием ¦ ¦ ¦
¦ Косвенная через адресный регистр со ¦ 101 ¦ рег # ¦
¦ смещением ¦ ¦ ¦
¦ Косвенная через адресный регистр и ¦ 110 ¦ рег # ¦
¦ память с индексированием ¦ ¦ ¦
¦ С абсолютным коротким адресом ¦ 111 ¦ 000 ¦
¦ С абсолютным длинным адресом ¦ 111 ¦ 001 ¦
¦ Косвенная через программный счетчик ¦ 111 ¦ 010 ¦
¦ со смещением ¦ ¦ ¦
¦ Косвенная через программный счетчик ¦ 111 ¦ 011 ¦
¦ и память с индексированием ¦ ¦ ¦
¦ С непосредственными данными ¦ 111 ¦ 100 ¦
¦ Зарезервирован для будущего исполь- ¦ 111 ¦ 101 ¦
¦ зования фирмой Моторола ¦ ¦ ¦
¦ Зарезервирован для будущего исполь- ¦ 111 ¦ 110 ¦
¦ зования фирмой Моторола ¦ ¦ ¦
¦ Зарезервирован для будущего исполь- ¦ 111 ¦ 111 ¦
¦ зования фирмой Моторола ¦ ¦ ¦
L--------------------------------------+-------+--------2.10 СИСТЕМНЫЙ СТЕК
В качестве указателя системного стека (SP) используется седьмой адресный регистр (A7), роль которого в каждый конкретный момент играет один из трех имеющихся системных стековых регистров. Какой именно указатель стека используется в текущий момент, определяют биты M и S регистра состояния. Если S=0, то активен указатель стека пользователя (USP), а указатели основного стека и стека прерываний недоступны. Если S=1 и M=1, то активен указатель основного стека (MSP), а регистры стека пользователя и стека прерываний как адресные регистры недоступны. Если S=1 и
M=0, то в свою очередь активен указатель стека прерываний
(ISP), а недоступны как адресные регистры указатели основного стека и стека пользователя. (Последнее соответствует режиму супервизора в MC68000, MC68008, MC68010 и MC68012). Термином
"стек супервизора" именуется, в зависимости от состояния бита
M, указатель основного стека или стека прерываний. Каждый из системных стеков растет в сторону убывания адресов.
Неявное обращение к активному указателю системного стека осуществляется всеми командами, использующими системный стек для связи или выделения памяти.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.