Script - Страница 73

МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА 8051 - Script

Насколько полезны такие команды? Если сравнить программу первого приложения, написанную для 8051, с программами для других микроконтроллеров, то можно заметить, как легко перенести логическое состояние кнопки на светодиод.

Индексная адресация в пространстве памяти объемом 64 Кбайт может производиться с помощью индексного регистра RI или RO текущего банка или регистра-указателя DPTR путем использования команд «mov» и «movx» (команды 12.7, 12.8 и 12.9). В классическом 8051 адреса внешней памяти начинаются с OOSOh, и, как было сказано ранее, некоторые модели микроконтроллеров 8051 имеют 256 байт внутренней памяти, к которой можно получить доступ с помощью индексной адресации. Когда применяется регистр Ri, то для адресации доступны только первые 256 байт памяти. Когда в качестве индексного регистра выступает DPTR, то доступны все 64К памяти.

Загрузить 8-разрядные индексные регистры текущего банка можно с помощью команды «Mov Rn, #Const». Загрузка 16-разрядного регистра-указателя DPTR осуществляется командой «mov DPTR, #Const» (команда 12.10).

Существует две других формы команд с индексной адресацией. Первая — это стековые операции «push» и «pop» (команды 12.11 и 12.12). Эти команды выполняют обычные операции загрузки в стек и извлечения из него содержимого аккумулятора. Однако команды «push А» и «pop А» будут восприниматься компилятором как неверные. В этих командах только один параметр, поэтому, как отмечено выше, корректная запись команд, использующих аккумулятор, имеет вид «push АСС» и «pop АСС».

Go to Top