Кожна команда PIC16С5Х – це 12-бітне слово, що розділене по сенсу на наступні частини: код операції (OPCODE), поле для одного або більше операндів, що приймають або не приймають участь в цій команді. Формат команди наведений на рис. 2.14.
Опис полів команд наведений в табл. 2.6. Система команд PIC16С5Х включає в себе байт-орієнтовані команди, біт-орієнтовані, операції з константами і команди передачі керування (див. табл. 2.7).
Для байт-орієнтованих команд "f" позначає собою регістр, з яким проводяться дії. Тобто "f" позначає один з 32-х регістрів ОЗП мікроконтролера, який буде використовувати команда з урахуванням поточного номера банку. Біт "d" визначає, куди покласти результат. Якщо d = 0, результат буде знаходитись в W регістрі. Якщо "d" = 1, результат буде знаходитись в регістрі "f", що згадується в команді.
Команди роботи з байтами
11 6 | 4 0 | |
OPCODE | d | f(file#) |
d = 0 для позначення W
d = 1 для позначення F
f = 5-розрядна адреса регістра
Команди роботи з бітами
11 8 | 7 5 | 4 0 |
OPCODE | b(bit) | f(file#) |
b = 3-розрядний номер біта
f = 5-розрядна адреса регістра
Команди керування і операцій з константами (крім GOTO і CALL)
11 8 | 7 0 |
OPCODE | k (константа) |
k = 8-розрядне значення
Команди GOTO і CALL
11 9 | 8 0 |
OPCODE | k (константа) |
k = 9-розрядне значення