- •Микропроцессорные контроллеры
- •8.3 Система команд
- •10.4 Организация памяти
- •1. Типы архитектур микроконтроллеров
- •1.1 Основные структуры вычислительных систем
- •1.2 Определение микропроцессора
- •1.3 Шинная организация соединений
- •1.4. Типы архитектур микроконтроллеров
- •2 Микроконтроллер на базе 8-разрядного
- •2.1 Описание микропроцессора кр1821вм85
- •2.2 Режимы работы мп
- •3 Микроконтроллер на базе 16-разрядного микропроцессора к1810вм86
- •3.1 Технические характеристики мп к1810вм86
- •3.2 Назначение сигналов
- •3.3 Программно-доступные регистры
- •3.5 Организация внешней памяти
- •3.6 Структурная схема мк на базе мп к1810вм86
- •3.7 Способы адресации
- •3.8 Система команд мп 1810вм86
- •3.8.1 Команды пересылок данных
- •2. Пересылки “регистр-память” -
- •3.8.2 Команды преобразование данных
- •10. Команды сдвигов –
- •3.8.3 Команды передачи управления
- •1. Безусловные переходы -
- •8 Микроконтроллер на базе омэвм к1816ве48
- •8.1 Технические характеристики к1816ве48
- •8.2 Способы адресации операндов
- •8.3 Система команд
- •Rlc a, rrc a ; циклические сдвиги влево и вправо через признак переноса.
- •8.4 Таймер
- •8.5 Структурная схема мк
- •9 Микроконтроллер на базе омэвм к1816ве51
- •9.1 Технические характеристики омэвм к1816ве51
- •9.2 Организация памяти
- •9.3 Регистры специальных функций
- •9.4 Способы адресации операндов
- •9.5 Система команд
- •Rlc a, rrc a ; циклические сдвиги влево и вправо через признак переноса.
- •9.6 Управление прерываниями
- •9.7. Последовательный ввод-вывод данных
- •9.8 Таймеры
- •11.1 Семейство pic-контроллеров
- •12 Современные тенденции в развитии
- •12.1 Сигнальные процессоры фирмы Texas Instruments
- •12.2 Сигнальные процессоры Analog Devices
- •12.3 Транспьютеры
3.8 Система команд мп 1810вм86
Команды в МП 1810ВМ86 имеют переменную длительность, кратную байту и занимающую формат от 1-го до 6-ти байт. Самые короткие команды – это команды имеющие регистровую адресацию (рисунок 3.8.1,а), а самые длинные команды относятся к прямой адресации, когда в команде указывается не только 16-разрядное смещение, но и еще 16-разрядный сегментный регистр (рисунок 3.8.1,б).
Рисунок 3.7.2 Минимальный (а) и максимальный (б) форматы команд
Байт кода операции 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 основных типа команд:
пересылки;
преобразование данных;
команды передачи управления.
3.8.1 Команды пересылок данных
Фактически по этим командам идет копирование данных, так как при пересылке код в источнике остается.
1. Пресылки “регистр-регистр” -
MOV r1, r2 ; r2 r1;
2. Пересылки “регистр-память” -
MOV r, [disp ] ; M[disp ] r
MOV [disp ], r ; r M[disp ];
3. Непосредственная загрузка регистра или памяти -
MOV r[disp ] , data ; данные r или в память M[disp ]
4. Обращение к стеку -
PUSH r ; запись в стек,
POP r ; чтение из стека;
5. Ввод/вывод данных с использованием прямой адресации -
IN AX, P[N8] ; ввод из порта с адресом N8 в регистр AX,
IN AL, P[N8]; ввод 8-разрядного кода в регистр AL,
OUT P[N8], AX ; вывод из регистра АХ в порт с адресом N8,
OUT P[N8], AL ; вывод 8-разрядного кода из регистра AL.
При прямой адресации возможно обращение к 256 внешним устройствам;
6. Ввод/вывод данных с использованием косвенной адресации. Для косвенной адресации используется регистр DX для хранения адреса ВншУ. Косвенная адресация позволяет обратиться к 64К внешних устройств. Команды имеют следующий вид –
IN AX, DX ; ввод из порта с адресом в DX в регистр AX,
IN AL, DX ; ввод 8-разрядного кода в регистр AL,
OUT DX, AX ; вывод из регистра АХ в порт с адресом в DX;
7. Команды пересылок адреса:
LEA r, [r1+r2+disp] ; исполнительный адрес EA, сформированный из источников, указанных в квадратных скобках, сохраняется в регистре r,
LDS r, [r1+r2+disp] ; по исполнительному адресу указанному в команде из памяти извлекается 4 байта, которые начиная с первого записываются: в младший байт регистра r, в старший байт регистра r, в младший байт сегментного регистр DS и в старший байт сегментного регистр DS,
LЕS r, [r1+r2+disp] ; отличается от команды LDS тем, что используется сегментный регистр ES.
Команды LDS и LES используются при обращении к данным, находящимся вне текущего сегмента DS или ES. Приведем пример использования команды LDS. Пусть пара 16-разрядных адресов [12C0:100A] – база сегмента и смещение в сегменте предварительно загружается в память с адреса 70F25h. С помощью команды LDS BX, [0F25h] мы обращаемся к памяти и извлекаем сначала два байта 100Ah и загружаем их в регистр ВХ, а затем извлекаются 3-й и 4-й байты, которые загружаются в DS. Далее выполняется команда MOV AL, [BX], по которой из ячейки памяти, смещение адреса, которое записано в BX, извлекается байт в аккумулятор AL. Схема перемещения данных представлена на рисунке 3.7.3.
Рисунок 3.7.3 Пример использования команды LDS