|
Откуда компилятор узнает о них? Вот поэтому и формализовали таким способом сохранение регистров при обработке прерывания. Почитайте мануал на компилятор, там должно быть указано какие регистры обычно используются функциями и какие из них сохраняются. В IAR EW430, например, можно указать что R4 и R5 : Not userd (Project-Options-C/C++ compiler-Code) и тогда компилятор не будет их использовать при компиляции функций и соответственно не будет сохранять их в стек при обработке прерываний.
E-mail: info@telesys.ru