307006851 发表于 2015-3-16 18:44:09

关于出栈入栈

问题如图:




0123h, 0456h, 0789h, 0abch, 0defh, 0fedh, 0cbah, 0987h 这段数据依次入栈后是不是
0987h, 0cbah, 0fedh, 0defh, 0abch, 0789h, 0456h, 0123h ?


那么出栈是怎么出的????

xinyangyas 发表于 2015-3-17 08:12:58

这个好像是 顺序进栈 逆序存储出来
add bx,2是索取 cs段中偏移地址为bx 中的值
进栈
然后在bx=0 在出栈因为栈是后进先出
所以 你把进栈数据 到过来看就是出栈的顺序
栈空间理解 我自己是这么理解的 比如 1-16 是一个栈 最后一位就是 栈低 指针为16
因为栈低是以字型数据存储的 2个字节 所以进栈要 16-2 出栈要+2 来得出当先sp栈定指针的值
在不然你就 把进栈看成从后像前 进栈 出栈就是 后前向后出栈 sp 就是当数据的位置
个人见解 有误乎喷
页: [1]
查看完整版本: 关于出栈入栈