Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МИУС Ермакова / конспект лекций.doc
Скачиваний:
77
Добавлен:
03.03.2016
Размер:
3.74 Mб
Скачать

1.2. Система команд микроконтроллера 1830ве51

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

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

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

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

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

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

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

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

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

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

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

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

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

  5. Индексная адресация (IndexedAddressing). Индексная адресация используется при обращении к памяти программ и только при чтении. В этом режиме осуществляется просмотр таблиц в памяти программ. 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 элемента Х

Соседние файлы в папке МИУС Ермакова