Page 212 - 4503
P. 212
addlw 1 ;якщо так, тоді до вмісту
;робочого ;регістру додати 1
movwf S_MID,f ; якщо ні, то скопіювати
;вміт до середнього байту суми
;----Пункт3---------------------------------
сlrf S_HIG ; очистити старший байт
;суми
btfsс STATUS,С ; перевірити чи
;відбулось переповнення у робочому регістрі
;внаслідок команди ;addlw 1
incf S_HIG ; якщо так, то
;інкрементувати старший байт суми
; якщо ні, то виконувати ;наступну ;секцію
загальної програми
Слід відмітити, що оскільки жодна з команд програми
7.3 окрім addwf B,w і addlw 1 не впливають на
стан ознаки С, тому є можливим застосування команди
btfsс STATUS,С для перевірки стану цієї ознаки навіть
через декілька команд після команди додавання.
7.2.2 Різниця в застосуванні команд інкрементації–
декрементації і додавання–віднімання одиниці.
Команди інкрементування і декрементування, як і
команди addlw 1 та addlw -1 здійснюють додавання 1 до
вмісту певного регістру чи відповідно віднімання 1 від нього.
Різниця полягає в тому, що дія команд incf, decf не змінює
стану ознак C і DC. У той же час ці команди впливають на
ознаку Z.
Як бачимо з таблиці 6.2 результат дії команд
декрементування і інкрементуванн, як і команди addwf може
212