ВУЗ:
Составители:
Пример:
int_1 org 0x20 ;Метка int_1 организована с адреса
20h
nop ;Начало подпрограммы
include <<filename>> или include "<include_file>"
- подключает дpугой исходный файл, (включение может быть вложенным)
Пример:
include "c:\sys\sysdefs.inc" ;подключить системные
; определения
include <regs.h> ; подключить описания
; регистров
list [<list_option>, ..., <list_option>] директива
позволяющая управлять листингом. Запускается с ключами, мы рассмотрим
только ключ p – тип процессора
Пример:
list p=16f877
banksel <const> – по этой директиве Ассемблер генерирует
команды выбора банка, в которой находится предварительно определенная
кон станта - const.
Пример:
banksel TRISA
movwf TRISA
end - конец ассемблерной программы, все, что после этой
директивы будет игнорировано.
Пример:
list p=16f877
: ; выполняемый код
: ;
end ; Конец команд
3.3.7. СИСТЕМА КОМАНД PIC16F877
Система команд PIC16F877 показана в таблице 3.3. Всего имеется 35
инструкций. Инструкции бывают байт-ориентированными (операндом
является байт) или бит-ориентированные (операнд – отдельный бит
регистра).
Обозначения см. после таблицы.
Таблица 3.3 Система команд PIC16F877
№ Мнемокод
Операнд Выполняемая операция
Измен
яемые
флаги
Ц
и
к
л
ы
Приме
чания
Байт-ориентированные команды с регистровым файлом.
1. ADDWF f,d
0<f<127
d-[0,1]
Сложение W с f
C, DC,
Z
1 1,2
2. ANDWF f,d
0<f<127
d-[0,1]
Логическое И W и f 1 1,2
3. CLRF f
0<f<127 Сброс регистра f Z 1 2
4. CLRW
— Сброс регистра W Z 1
5. COMF f,d
0<f<127
d-[0,1]
Инверсия регистра f Z 1 1,2
6. DECF f,d
0<f<127
d-[0,1]
Декремент регистра f Z 1 1,2
7. DECFSZ f,d
0<f<127
d-[0,1]
Декремент f и пропуск
следующей команды, если
результат декремента равен 0
— 1(2)
1,2,
3
8. INCF f,d
0<f<127
d-[0,1]
Инкремент регистра f Z 1 1,2
9. INCFSZ f,d
0<f<127
d-[0,1]
Инкремент f и пропуск
следующей команды, если
результат декремента равен 0
— 1(2)
1,2,
3
10.
IORWF f,d
0<f<127
d-[0,1]
Логическое ИЛИ W и f Z 1 1,2
11.
MOVF f,d
0<f<127
d-[0,1]
Пересылка регистра f Z 1 1,2
12.
MOVWF f
0<f<127 Пересылка W в f 1
13.
NOP
— Холостая команда — 1
14.
RLF f,d
0<f<127
d-[0,1]
Сдвиг f влево через перенос C 1 1,2
15.
RRF f,d
0<f<127
d-[0,1]
Сдвиг f вправо через перенос
C 1 1,2
16.
SUBWF f,d
0<f<127
d-[0,1]
Вычитание W из f
C, DC,
Z
1 1,2
17.
SWAPF f,d
0<f<127
d-[0,1]
Обмен местами тетрад в f
— 1 1,2
18.
XORWF f,d
0<f<127
d-[0,1]
Исключающее ИЛИ W и f
Z 1 1,2
Страницы
- « первая
- ‹ предыдущая
- …
- 22
- 23
- 24
- 25
- 26
- …
- следующая ›
- последняя »
