есть вот таккая фигня
// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void)
{
char tempp;
PORTB=0;
tempp=0;
#asm ("sei");
....
pause:
while (tempp==1);
Как сделать, чтобы после возврата из прерывания temp был равен 0, а не 1. А то после прерывания temp равен 1 
prescan();