Цитата(buka_2004 @ Jun 17 2008, 06:40)

Для 18 серии еще возможен вот такой вариант на все случаи жизни, и код будет перемещаемым, и размер k любой.
Код
clrf PCLATH
rlcf k, w
btfsc STATUS, C ;это можно опустить если k<128
incf PCLATH, f ;это можно опустить если k<128
Здесь у вас возможна неуловимая ошибка во второй строке, если при выполнении фрагмента бит переноса будет установлен. Такие ошибки весьма опасны, поскольку их трудно отследить. Лучше код переписать так
Код
clrf PCLATH
bcf STATUS,C
rlcf k,w
rlcf PCLATH
и далее по тексту
Но код всё равно получается длинный, если сравнивать с моим последним вариантом, а стоит он у меня в прерывании.