А зачем стек переставляешь внутри обработчика прерываний?