Самоучитель для микроконтроллеров AVR - Страница 230

Самоучитель для микроконтроллеров AVR - Самоучитель для микроконтроллеров AVR

Расширение системы команд

Дополнительно к стандартным 75-ти инструкциям ядра PIC18 новые микроконтроллеры поддерживают команды расширяющие функциональность ядра. Дополнительные восемь инструкций пополняют операции с косвенной и индексной адресацией, в новом ядре также реализована индексная адресация со смещением для многих стандартных инструкций ядра PIC18. Расширение системы команд по умолчанию запрещено. Для разрешения работы расширенных команд служит специальный бит XINST в битах конфигурации микроконтроллера. Таким образом, реализуется полная программная совместимость со стандартным ядром, если пользователь использует новые микроконтроллеры со старым программным обеспечением.

Расширенные команды можно классифицировать как команды с константами, которые работают с регистрами общего назначения или используются для индексной адресации. Список новых инструкций приведен в табл.1. Две из инструкций ADDFSR и SUBFSR имеют специальное расширение для работы с регистром косвенной адресации FSR2. Эти команды (ADDULNK и SUBLNK) позволяют производить автоматический выход из подпрограммы (return) после выполнения. Расширенные инструкции предназначены для улучшения оптимизации и возможности создания реентерабельного кода (т.е. построения рекурсивных алгоритмов или использования программного стека) на языках высокого уровня, например на Си. Наряду с прочим, расширение системы команд позволяет пользователю работать с языками высокого уровня для эффективного выполнения таких операций над данными как:

Go to Top