网络游戏斗士 发表于 2012-3-13 09:32:01

关于栈的分配

今天看到 小甲鱼老师 寄存器(内存访问)第18视频,突然有个想法 不知道对不对 请大家指点下
mov ax,1000
mov ss,ax
mov sp,ff

把sp 栈顶指向 10FF 是不是就是分配了 FD 大小的栈空间?

风剑河 发表于 2012-3-13 12:20:18

在CPU看来,栈空间是没有大小的。sp定下来之后(假如sp=1000),当你往栈中push数据,数据的存放空间就是从1000:FFFF~1000:0000;当你push到sp=0000的时候,从人类来看,栈空间已经“满了”,但从CPU来看不是这样,你再push一个,它就sp=sp-2=0000-2=FFFE,所以它会用新push进来的数据覆盖原1000:FFFE字空间中的数据。所以栈的“大小”是人类的概念,只能由你在编程时来把握来控制。

网络游戏斗士 发表于 2012-3-13 13:40:02

你这还是答非所问 ,我好奇的是 是不是这样的事情 比如 C++ 分配内存是NEW一样
页: [1]
查看完整版本: 关于栈的分配