小编Las*_*ump的帖子

当您将数据压入堆栈或从堆栈中弹出数据时,您到底在移动什么?

这涉及基本的计算机体系结构,即具有堆栈的体系结构,没有特别的。

使用 FILO(先进后出)方法,就像使用 Intel x86 一样,您使用推送和弹出,但是什么表示或决定推送的内容?

例如,我想推送一个“变量”,比如说......我们知道芯片中的所有内容都只是两伏的二进制位、逻辑驱动电路、门、晶体管等。当我推送一个字节时包含以二进制表示的地址,如下所示:1000 0101、133或85(十六进制),一个值被移动到堆栈......这里有一些问题:

1.堆栈到底位于芯片中的什么位置?

2.芯片上的堆栈配置如何启用/禁用数据块的进出?

3.在多任务环境中通常有多个堆栈。额外的堆栈是如何或从哪里来的?

我知道这可能是题外话,但我希望从硬件方面更好地了解堆栈本身。不,我不想看到板的图片,我明白了,但我想设想数据如何到达它,堆栈到底在哪里,它在芯片中是什么,以及它是如何配置的。

assembly callstack stack-memory

5
推荐指数
1
解决办法
3087
查看次数

标签 统计

assembly ×1

callstack ×1

stack-memory ×1