Сообщение от parovoZZ
|
Хм, а надо ли вообще что-то сохранять в стек, если у меня в главном цикле фактически две команды:
|
Если так как у вас - то можно ничего в стеке не сохранять вообще, так как тем командам содержимое SREG по барабану.
Но я бы советовал делать как положено. Потому что сейчас это работает, а потом вам понадобится сделать в основном цикле, скажем, сравнение и условный переход, а про шаманство со стеком вы уже забыли и... И получите некорректно работающую программу.
По моему, совершенно не трудно - если в обработчике, скажем, "портится" регистр R16, то сделать так:
Код:
|
push R16
in R16,SREG
push R16
; тут код
pop R16
out SREG,R16
pop R16
reti |
если вообще регистры не трогаются, то так:
Код:
|
push R16
in R16,SREG
; тут код
out SREG,R16
pop R16
reti |
и быть спокойным.