Главная страница
Навигация по странице:

_06Л_Битовые и символные команды. 3 Биториентированные команды Мнемонические обозначения кода операции биториентированных команд начинаются с символа B



Скачать 167 Kb.
Название 3 Биториентированные команды Мнемонические обозначения кода операции биториентированных команд начинаются с символа B
Анкор _06Л_Битовые и символные команды.doc
Дата 01.05.2017
Размер 167 Kb.
Формат файла doc
Имя файла _06Л_Битовые и символные команды.doc
Тип Документы
#5801

3.3. Бит-ориентированные команды
Мнемонические обозначения кода операции бит-ориентированных команд начинаются с символа B. Все они имеют одинаковый синтаксис:
[label] КОП f,b
Здесь символом 'f', как и в предыдущих случаях, обозначается адрес файлового регистра, содержащего анализируемый бит. Символ 'b' указывает номер бита в регистре 'f'. Бит-ориентированных команд всего четыре: две команды проверки на равенство бита нулю или единице, и две команды установки бита в единицу или ноль.
BTFSC - Проверка на равенство бита нулю. Если бит 'b' в регистре 'f' равен 0, тогда следующая команда пропускается. В случае если бит 'b' равен 0, вместо следующей по списку команды выполняется пустая операция (NOP) увеличивая длительность выполнения данной команды до двух командных циклов.
Код: 01 10bb bfff ffff
Пример #1: HERE BTFSC FLAG,1

FALSE GOTO PROCESS_CODE

TRUE *

*

BTFSS - Проверка на равенство бита 1. Если бит 'b' в регистре 'f' равен 1, тогда следующая команда пропускается. Выполняется аналогично команде BTFSC.

BSF и BCF - команды установки в 1 или 0 соответственно бита 'b' в регистре 'f'


3.4. Символьные команды
ADDLW - Сложение литеры и W. Содержимое регистра W складывается с 8-ми битной литерой k и результат помещается в регистр W.
Синтаксис: [label] ADDLW k

Код: 11 111x kkkk kkkk

Изменяет флаги: C, DC, Z
Пример #1: ADDLW 0x15

Перед выполнением: W = 0x10

После выполнения: W = 0x25

SUBLW - Вычитание W из литеры. Содержимое регистра W вычитается из из 8-ми битного символа 'k'. Результат помещается в регистр W.

Синтаксис: [label] SUBLW k

IORLW - Логическая операция поразрядного включающего ИЛИ между литерой и W. Содержимое регистра W подвергается поразрядной логической операции включающего ИЛИ с 8-битной литерой 'k'. Результат помещается в регистр W.

Синтаксис: [label] IORLW k
Пример: IORLW 0x35

Перед выполнением: W = 0x9A

После выполнения: W = 0xBF Z = 1

XORLW - Логическая операция исключающего ИЛИ с символом и W. Содержимое регистра W подвергается поразрядной логической операции исключающего ИЛИ с 8-битной литерой 'k'. Результат помещается в регистр W.
Пример: XORLW 0x35

Перед выполнением: W=0x9A

После выполнения: W=0xAF Z=1

ANDLW - Логическая операция "И" с символом и W. Логическая опрерация поразрядного сложения 8-ми битной литеры и содержимого регистра W. Результат сложения помещается в W регистр.
Пример: ANDLW 0x35

Перед выполнением: W = 0x9A

После выполнения: W = 0x10 Z = 1

MOVLW - Пересылка литеры в регистр W

Синтаксис: [label] MOVLW k

3.5. Справочные данные для изучения команд
В этом пункте в двух таблицах собраны обозначения (Табл.1), использовавшиеся при описании инструкций микроконтроллеров PIC16, а также форматы (Табл.2) символьных и числовых данных, которые используются в MPASM.

Табл.1

f

Адрес регистра

W

Рабочий регистр

b

Номер бита в 8-ми разрядном регистре

k

Константа

x

Не используется. Ассемблер формирует код с х=0

d

Регистр назначения:
d=0 - результат в регистре W
d=1 - результат в регистре f.
По умолчанию d=1

label

Имя метки

TOS:

Вершина стека

РС

Счетчик команд

PCLATCH

Регистр указатель номера страницы в памяти прграмм

ТО

Тайм-аут

PD:

Выключение питания

Dest

Регистр назначения: рабочий регистр W или регистр, заданный в команде

[ ]

Необязательные параметры

( )

Содержание

-->

Присвоение

< >

Битовое поле



Из набора


Табл.2

написать администратору сайта