堆栈内存分配是在处理器/ RAM中完成的

时间:2015-10-30 16:23:47

标签: java stack mips

目前我正在研究MIPS架构, 我遇到了子程序调用,它说堆栈分配是在处理器内使用寄存器

进行的

Source for this

但我也学过java的基础编程课程。如果我知道的是正确的! " 函数调用期间的堆栈内存分配发生在RAM "

this i confirmed from stack overflow (2nd ans)

任何人都可以告诉我,我的理解是错误的,如果是,为什么?

提前致谢

2 个答案:

答案 0 :(得分:3)

堆栈直接在RAM中,对于大多数处理器,MIPS都有寄存器来帮助它有效地移动到堆栈中并跟踪数据。这两个重要的处理器寄存器是堆栈指针(指向堆栈的顶部)和帧指针(指向堆栈中的当前堆栈帧)。

答案 1 :(得分:0)

堆栈是从RAM中分配的。快速浏览一下您的链接,但无法找到他们所说的堆栈分配在处理器内使用寄存器的位置。也许他们指的是在调用子程序之前放置变量的位置。