本帖最后由 sheriff 于 2010-7-15 22:41 编辑
int sum(char a, char b, char c, char d)
{
return a + b + c +d;
}
int sum1(char a, char b, char c, char d)
{
return(sum(a, b, c, d));
}
int sum2(char a, char b, char c, char d)
{
return(sum1(a, b, c, d));
}
void isr0(void) interrupt 0
{
sum2(1,2,3,4);
}
用keil simulater运行,在isr0里堆栈深度为15(不算进入中断时压栈的2字节PC),如何解释? |