|
|
Система команд МП 1810ВМ86.
Команды в МП 1810ВМ86 имеют переменную длительность, кратную байту и занимающую формат от 1-го до 6-ти байт. Самые короткие команды – это команды имеющие регистровую адресацию (рисунок 3.8.1,а), а самые длинные команды относятся к прямой адресации, когда в команде указывается не только 16-разрядное смещение, но и еще 16-разрядный сегментный регистр.
Минимальный (а) и максимальный (б) форматы команд.
Байт кода операции KOП. В первом байте команды указывается код операции и номер регистра, а также может быть указано направление передачи данных по отношению к регистру reg в поле пост-байта с помощью разряда d. При d=0 – регистр является источником данных, а при d=1 – приемником. Разряд w – определяет разрядность регистров: при w=1 – 16-разрядные, а при w=0 – 8-разрядные регистры.
Пост-байт – это байт после кода операции КОП. Пост-байт используется для расширения способов адресации и имеет следующее значения разрядов:
- mod – два разряда, определяющие режим использования полей disp.
00 – disp отсутствует, 01 – disp имеет длину в 1 байт, 01 –disp
имеет длину в 2 байта, 11 – источником операнда является
регистр, номер которого содержится в поле reg;
- reg - номер регистра – источника 2-го операнда;
- r/m - код, определяющий вид косвенной адресации (таблица 3.7.1).
За пост-байтом могут следовать байты константы при непосредственной адресации, или байты смещения адреса disp и номер сегментной страницы seg, загружаемый в соответствующий сегментный регистр.
Выделим 3 основных типа команд:
пересылки;
преобразование данных;
команды передачи управления.
Способы адресации
Способы адресации операндов в МП К1810ВМ86 существенно расширены – до 24 способов.
Наряду с регистровой, непосредственной и прямой адресацией, расширены возможности косвенной адресации, когда в команде указывается регистр, в котором хранится адрес операнда, к которому выполняется обращение.
В системе команд МП 1810ВМ86 существенно расширено число регистров,
Источники адреса при косвенной адресации
которые могут быть источником адреса при косвенной адресации. Это регистры – BX, BP, SI, DI. По названию регистров, а также по их комбинациям, различают способы адресации.
При косвенной адресации используется не только комбинация регистров, как источников исполнительного адреса EA, но и постоянное смещение disp в пределах текущей страницы памяти. Причем, смещение disp используется с учетом старшего разряда и с учетом размера – в пределах +- 128 адресов, если используется один байт смещения dispL, и в пределах +- 32768 адресов, если используется два байта смещения – disp L, disp H .
Таким образом, физический адрес при косвенной адресации может состоять из 4-х частей, находящихся в базовом регистре, индексном регистре, в команде в виде смещения disp и в сегментном регистре (см. п.3.4). Косвенная адресация записывается с использованием квадратных скобок, например
MOV DX, [BX + DI + 468] ; переслать в регистр DX слово из ячеек памяти, начиная с адреса, хранящегося в регистрах BX, DI и имеющего смещение 468.
Относительная адресация. Исполнительный адрес ЕА вычисляется как сумма текущего значения счетчика команд IP и смещения disp, указанного в команде:
Относительная адресация
Команды передачи управления.
К командам передачи управления относятся следующие группы команд: - безусловный переход;
— условный переход;
— вызов подпрограммы;
— программное прерывание;
— циклы.
Безусловные переходы -
JMP <метка> ; переход в произвольную точку
JMP SHORT <метка> ; короткий переход в пределах +-127 адресов
JMP [r16/m] ; переход по косвенному адресу в пределах текущего сегмента,
JMP FAR <метка> ; длинный переход в другой сегмент
JMP WORD PTR [r+disp] ; переход косвенному адресу в другой сегмент, когда по адресу, указанному в квадратных скобках определяется исполнительный адрес EA в текущем сегменте. Из памяти извлекаются 4 байта, из которых байты ЕА+2 и ЕА+3 загружаются в сегментный регистр, а байты ЕА и ЕА+1 в регистр адреса IP.
Условные переходы – передача управления в зависимости от результата предыдущей операции. Все команды условных переходов имеют одинаковый 2-х байтный формат, в котором во 2-м байте указывается смещение с учетом знака. То есть условные переходы выполняются в пределах текущей страницы на +- 127 адресов.
Мнемокоды условных переходов строятся по шаблону – J***<метка>, где (*) – обозначение условий для выполнения перехода по метке. Используются следующие признаки:
Z (zero) - нулевой результат; C (carry) – перенос; P (parity) – четность;
S (sign) – знак результата; N (not) – отрицание; E (equal) – равенство;
G (greater) – больше; L (less) – меньше; A (above)– над; B (below)– под.
JE/JZ <метка>; переход, если равно или по нулю,
JNE/JNZ <метка>; переход, если не равно или не по нулю,
JB/JNAE <метка>; переход, если меньше или не больше и не равно,
JA/JNBE <метка>; переход, если больше или не меньше и не равно,
JL/JNGE <метка>; переход, если меньше или не больше и не равно,
JG/JNLE <метка>; переход, если больше или не меньше и не равно.
Вызов подпрограммы – CALL. Позволяет вызывать подпрограмму как в текущем сегменте, так и в другом сегменте. Формат команд тот же, что и для безусловного перехода кроме короткого перехода.
При выполнении команды CALL в стеке запоминается адрес следующей команды – как содержимое регистра IP, так и содержимое сегментного регистра CS.
Возврат по адресу в стеке – RET. Используется также 4 формата.
Команды организации циклов – LOOP. По умолчанию используется регистр CX в качестве счетчика шагов.
LOOP <метка> ; выполняется переход по метке, пока CX != 0,
LOOPZ <метка> ; цикл, пока Z=1 (условие нуля) и CX != 0,
LOOPNE <метка> ; цикл, пока не равно и CX != 0, то есть проверяется два условия.
|
|
Микропроцессор и типы архитектур контроллеров на основе микропроцессоров
Микропроцессорный комплект серии 1821
Система команд, способы адресации операндов для МП КР1821ВМ85
Этапы проектирования контроллера на базе 8-разрядного микропроцессора
Микропроцессор К1810ВМ86
Система команд, способы адресации операндов для МП К1810ВМ86.
Однокристальные микроЭВМ К1816ВЕ48. Назначение, технические характеристики, основные устройства, входящие в ОМЭВМ, система команд, организация памяти.
Однокристальная микроЭВМ К1816ВЕ51. Назначение, технические характеристики, основные устройства, входящие в ОМЭВМ, система команд организация аналого-цифрового преобразования.
!
|
!
|
|
|