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

 

Пример 1:

Команда: CALLW
Действие: (PC + 2) > TOS, (W) > PCL, (PCLATH) > PCH, (PCLATU) > PCU
Адрес возврата (PC + 2) помещается в стек возврата.
Содержимое рабочего регистра W записывается в программный счетчик PCL, а содержимое PCLATH и PCLATU переписываются в PCH и PCU.
Пример использования (вызов функции по указателю):
movff  HIGH ptr, PCLATH; загрузка адреса указателя
movf   LOW ptr, w
callw   ; вызов подпрограммы по указателю

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

Большинство расширенных команд использует индексные параметры, используя один из регистров FSR (регистр указателя адреса при косвенной адресации) и некоторого смещения, чтобы определить регистр адресата или источник. Когда аргумент для команды служит частью индексной адресации он помещается в квадратные скобки " [ ] ". Это сделано чтобы указать, что параметр используется как индекс или сдвиг. Если индекс или значение смещения не заключены в скобки, то ассемблер MPASMTM укажет на ошибку. Когда разрешен расширенный набор команд, скобки также используются, чтобы указать индексные параметры в байт-ориентированных и бит-ориентированных командах.

Go to Top