【发布时间】:2015-10-02 02:56:11
【问题描述】:
如果在函数调用过程中push,为什么堆栈指针会移动到a 通过减去 4 倍的寄存器数量得到更小的值 压入堆栈?
我在阅读Understanding the stack时得到了这个
【问题讨论】:
-
因为,在实际的内存表示中,堆栈是从底部(较大地址)到顶部(较小地址)增长的。它的设计与堆的增长相反。
-
请说的更具体一点:你不明白为什么要进行减法,为什么要减去4次寄存器的数量,还是什么?
-
@cad 我明白了,但为什么是 4 次?
标签: pointers operating-system stack mips function-calls