Подробное описание команд
ADDLW Сложить константу с W Синтаксис: [ label ] ADDLW k Операнды: 0. k. 255 Операция: (W) + k > (W) Измен. флаги: C, DC, Z Описание: Содержимое регистра W складывается с 8-разрядной константой 'k'. Результат сохраняется в регистре W. ADDWF Сложение W и f Синтаксис: [ label ] ADDWF f,d Операнды: 0. f. 127 d. [0,1] Операция: (W) + (f) > (dest) Измен. флаги: C, DC, Z Описание: Сложить содержимое регистров W и 'f'. Если d=0, результат сохраняется в регистре W. Если d=1, результат сохраняется в регистре 'f'. ANDLW Побитное 'И' константы и W Синтаксис: [ label ] ANDLW k Операнды: 0. k. 255 Операция: (W).AND. k > (W) Измен. флаги: Z Описание: Выполняется побитное 'И' содержимого регистра W и 8-разрядной константы 'k'. Результат сохраняется в регистре W. ANDWF Побитное 'И' W и f Синтаксис: [ label ] ANDWF f,d Операнды: 0. f. 127 d. [0,1] Операция: (W).AND. (f) > (dest) Измен. флаги: Z Описание: Выполняется побитное 'И' содержимого регистров W и 'f'. Если d=0, результат сохраняется в регистре W. Если d=1, результат сохраняется в регистре 'f'. BCF Очистить бит b в регистре f Синтаксис: [ label ] BCF f,b Операнды: 0. f. 127 0. b. 7 Операция: 0 > (f<b>) Измен. флаги: Нет Описание: Очистить бит 'b' в регистре 'f'. BSF Установить бит b в регистре f Синтаксис: [ label ] BSF f,b Операнды: 0. f. 127 0. b. 7 Операция: 1 > (f<b>) Измен. флаги: Нет Описание: Установить бит 'b' в регистре 'f'. BTFSC Проверить бит b в регистре f, пропустить если 0 Синтаксис: [ label ] BTFSC f,b Операнды: 0. f. 127 0. b. 7 Операция: пропустить если (f<b>) = 0 Измен. флаги: Нет Описание: Если бит 'b' в регистре 'f' равен '1', то исполняется следующая инструкция. Если бит 'b' в регистре 'f' равен '0', то следующая инструкция не выполняется, команда выполняется за два цикла. Во втором цикле выполняется NOP. BTFSS Проверить бит b в регистре f, пропустить если 1 Синтаксис: [ label ] BTFSS f,b Операнды: 0. f. 127 0. b. 7 Операция: пропустить если (f<b>) = 1 Измен. флаги: Нет Описание: Если бит 'b' в регистре 'f' равен '0', то исполняется следующая инструкция. Если бит 'b' в регистре 'f' равен '1', то следующая инструкция не выполняется, команда выполняется за два цикла. Во втором цикле выполняется NOP. CALL Вызов подпрограммы Синтаксис: [ label ] CALL k Операнды: 0. k. 2047 Операция: (PC) + 1 > TOS, k > PC<10:0>, (PCLATH<4:3>) > PC<12:11> Измен. флаги: Нет Описание: Вызов подпрограммы. Адрес следующей инструкции (PC+1) помещается в вершину стека. Одиннадцать бит адреса загружаются из кода команды в счетчик команд PC<10:0>. Два старших бита загружаются в счетчик команд PC<12:11> из регистра PCLATH. Команда CALL выполняется за два цикла. CLRF Очистить f Синтаксис: [ label ] CLRF f Операнды: 0. f. 127 Операция: 00h > (f) 1 > Z Измен. флаги: Z Описание: Очистить содержимое регистра 'f' и установить флаг Z
|