Микроконтроллер pic16 Система команд г. Караганда
2001
ADDLW ADD Literal to W
Прибавление регистра W к константе k
Синтаксис: ADDLW k
Операнды: 00H k 0FFH
Операция: (k) + (W) W
Биты состояния: C, DC, Z
Описание: Содержимое регистра W добавляется к 8-битовой константе k. Результат сохраняется в регистре W.
Циклов: 1
ADDWF ADD W and f
Прибавление регистра W к регистру f
Синтаксис: ADDWF f,d
Операнды: fmin f fmax, d [0,1]
Операция: (f) + (W) (dest)
Биты состояния: C, DC, Z
Описание: Содержимое регистра W прибавляется к содержимому регистра f. Результат сохраняется: при d = 0 – в регистре W, при d = 1 – в том же регистре f.
Циклов: 1
ANDLW AND Literal to W
Сброс битов регистра W по маске k
Синтаксис: ANDLW k
Операнды: 00H k 0FFH
Операция: (W).AND.(k) W
Биты состояния: Z
Описание: В регистре W сбрасываются те биты, которые в маске k равны 0.
Циклов: 1
ANDWF AND W and f
Логическое умножение регистров W и f
Синтаксис: ANDWF f,d
Операнды: fmin f fmax, d [0,1]
Операция: (W).AND.(f) (dest)
Биты состояния: Z
Описание: Содержимые регистров W и f поразрядно логически умножаются. Результат сохраняется: при d = 0 -- в регистре W, при d = 1 -- в том же регистре f.
Циклов: 1
BCF Bit Clear f
Сброс бита b в регистре f
Синтаксис: BCF f,b
Операнды: fmin f fmax, 0 b 7
Операция: 0 b(f)
Биты состояния: Не изменяются
Описание: Бит b в регистре f сбрасывается в 0
Циклов: 1
BSF Bit Set f
Установка бита b в регистре f
Синтаксис: BSF f,b
Операнды: fmin f fmax, 0 b 7
Операция: 1 b(f)
Биты состояния: Не изменяются
Описание: Бит b в регистре f устанавливается в 1
Циклов: 1
BTFSC Bit Test f, Skip if Clear
Пропустить команду, если бит очищен
Синтаксис: BTFSC f,b
Операнды: fmin f fmax, 0 b 7
Операция: Пропустить команду, если b(f) = 0
Биты состояния: Не изменяются
Описание: Если бит b регистра f равен 1, выполняется следующая команда. Если бит b регистра f равен 0, следующая команда, считанная в текущем командном цикле, игнорируется, и вместо нее в следующем цикле выполняется NOP, в результате команда выполняется за два цикла.
Циклов: 1 (2)
BTFSS Bit Test f, Skip if Set
Пропустить команду, если бит установлен
Синтаксис: BTFSS f,b
Операнды: fmin f fmax, 0 b 7
Операция: Пропустить команду, если b(f) = 1
Биты состояния: Не изменяются
Описание: Если бит b регистра f равен 0, выполняется следующая команда. Если бит b регистра f равен 1, следующая команда, считанная в текущем командном цикле, игнорируется, и вместо нее в следующем цикле выполняется NOP, в результате команда выполняется за два цикла.
Циклов: 1 (2)
CALL CALL subroutine
Вызов подпрограммы
Синтаксис: CALL k
Операнды: 0 k 7FFH
Операция: (PC) + 1 TOS, k PC<10:0>, (PCLATH)<4:3> PC<12:11>.
Биты состояния: Не изменяются
Описание: Адрес возврата (PC) + 1 сохраняется в стеке. Младшие 11 бит адреса начала подпрограммы загружаются в PC из кода команды. Старшие два бита адреса загружаются в PC из регистра PCLATH.
Циклов: 2
CLRF CLeaR f
Очистка регистра f
Синтаксис: CLRF f
Операнды: fmin f fmax
Операция: 00h f, 1 Z
Биты состояния: Z
Описание: Содержимое регистра f сбрасывается в 0 и бит Z устанавливается в 1.
Циклов: 1
CLRW CLeaR W
Очистка регистра W
Синтаксис: CLRW
Операнды: Нет
Операция: 00h W, 1 Z
Биты состояния: Z
Описание: Содержимое регистра W сбрасывается в 0 и бит Z устанавливается в 1.
Циклов: 1
CLRWDT CLeaR WatchDog Timer
Сброс сторожевого таймера WDT
Синтаксис: CLRWDT
Операнды: Нет
Операция: 00h WDT, 0 WDT prescaler, 1 TO, 1 PD
Биты состояния: TO, PD
Описание: Команда сбрасывает сторожевой таймер WDT и предварительный делитель. В регистре состояния STATUS устанавливаются биты TO и PD.
Циклов: 1
COMF COMplement f
