leo72:
Di importante per la gestione degli interrupt nel registro di stato c'è solo il bit SREG_I, fidati. Tutto il resto serve alla CPU durante l'esecuzione dei calcoli.
E dici niente...
Tu esegui un calcolo in cui parte del risultato è nel registro di stato.
Esegui un interrupt. Il programma principale viene interrotto, viene eseguita una ISR che esegue calcoli che cambia alcuni bit del registro di stato, torni al programma principale con una configurazione diversa del registro di stato.
Il tuo programma prosegue, ma puoi essere sicuro che l'esecuzione e i risultati siano corretti?
Se invece salvi e ripristini il registro alla fine della ISR sai con certezza che il programma prosegue con la stessa configurazione lasciata quando ha dovuto eseguire la ISR.