Система команд микроконтроллера 1830ВЕ51


Система команд МК51 содержит 111 базовых команд, которые по функциональному признаку можно подразделить на следующие пять групп:

- команды передачи данных;

- арифметические команды;

- логические команды с байтовыми переменными;

- команды битового процессора;

- команды ветвления программ и передачи управления.

Формат команд - одно-, двух- и трехбайтовый, причем большинство команд (94) имеют формат один или два байта. Первый байт команды любого типа и формата всегда содержит код операции, второй и третий байты содержат либо адреса операндов, либо непосредственные операнды.

Операнды могут быть четырех типов: биты, тетрады (4 разряда), байты и 16-битные слова. Время выполнения команд составляет 1, 2 или 4 машинных цикла. При тактовой частоте 12 МГц длительность машинного цикла составляет 1 мкс, при этом 64 команды исполняются за 1 мкс, 45 команд - за 2 мкс и 2 команды (умножение и деление) - за 4 мкс.

В МК51 поддерживает следующие способы адресации:

1. Прямая адресация (Direct Addressing). Операнд определяется 8-битным адресом в команде. Эта адресация используется только для внутренней памяти данных и регистров специальных функций;

2. Косвенная адресация (Indirect Addressing). В этом случае команда адресует регистр, в котором содержится адрес операнда. Данный вид адресации может применяться при обращении как к внутреннему, так и внешнему ОЗУ. Для указания 8-битных адресов могут использоваться регистры R0 и R1 выбранного банка памяти или указатель стека SP. Для 16-битной адресации используется только регистр DPTR.

3. Регистровая адресация (Register Instruction). Данная адресация применяется для доступа к регистрам R0…R7 выбранного банка. Адреса регистров содержатся в байте кода операции и представляют собой трехбитовое поле, определяющее номер регистра. Выбор одного из четырех регистровых банков осуществляется программированием битов селектора банка (RS1, RS0) в PSW;

4. Непосредственная адресация (Immediate constants). Операнд содержится непосредственно в поле команды вслед за кодом операции и может занимать один или два байта (data8, data16).

5. Индексная адресация (Indexed Addressing). Индексная адресация используется при обращении к памяти программ и только при чтении. В этом режиме осуществляется просмотр таблиц в памяти программ. 16-битовый регистр (DPTR или PC) указывает базовый адрес требуемой таблицы, а аккумулятор указывает на точку входа в нее. Адрес элемента таблицы находится сложением базы с индексом (содержимым аккумулятора).

6. Другой тип индексной адресации применяется в командах “перехода по выбору”. При этом адрес перехода вычисляется как сумма указателя базы и аккумулятора.

7. Неявная адресация (Register-Specific Instructions). Некоторые команды используют индивидуальные регистры (например, операции с аккумулятором, DPTR), при этом данные регистры не имеют адреса, указывающего на них; это заложено в коде операции.

В табл. 1.15 приведены обозначения и символы, используемые в командах.

Таблица 1.15

Обозначение, символ Назначение
А Аккумулятор
Rn (n = 0... 7) Регистр общего назначения в выбранном банке памяти
direct Прямо адресуемый 8-ми битовый внутренний адрес ячейки данных, который может быть ячейкой внутреннего ОЗУ (0…127) или SFR (128…255)
@Ri(i= 0, 1) Регистр общего назначения в выбранном банке регистров, используемый в качестве регистра косвенного адреса
#data 8 8-ми битовый непосредственный операнд
#data 16 16-ти битовый непосредственный операнд
data H Старшие биты (15…8) непосредственных 16-ти битовых данных
data L Младшие биты (7…0) непосредственных 16-ти битовых данных
addr 11 11-ти битовый адрес назначения
addr 16 16-ти битовый адрес назначения
addr L Младшие биты адреса назначения
disp 8 8-ми битовый байт смещения со знаком
bit Бит с прямой адресацией, находящийся во внутреннем ОЗУ или SFR
/bit Инверсия прямо адресуемого бита
rel Относительный адрес перехода
(X) Содержимое элемента Х
((X)) Содержимое по адресу, хранящемся в элементе Х
(X) [M] Разряд М элемента Х
(X) [M1…M2] Группа разрядов М1…М2 элемента Х


Дата добавления: 2016-11-26; просмотров: 1886;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.01 сек.