鱼C论坛

 找回密码
 立即注册
查看: 2824|回复: 4

请问ds和ss有什么区别?

[复制链接]
发表于 2012-8-25 11:37:10 | 显示全部楼层 |阅读模式
1鱼币
抱歉,问了个这么弱的问题!!!我想问各位大大的是,通过ds+[X]可以吧数据写入内存,使用栈ss+sp也是把数据写入内存,为什么要用栈,而不直接用ds?

最佳答案

查看完整内容

也就是概念的问题 ds数据段 SS栈段 数据段一般存储长期使用的数据,就是全局变量,或者常量 栈段一般存储临时使用的数据,比如我们写了一个子程序需要三个参数,我们分别将三个参数压栈 push XX push XX push XX CALL XXX 然后这个名为XXX的子程序在执行完后就会 pop XX pop XX pop XX ret 一系列push和pop完之后栈段恢复原样 栈段一般都是存放临时数据的 也就是所谓的局部变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-8-25 11:37:11 | 显示全部楼层
也就是概念的问题
ds数据段 SS栈段
数据段一般存储长期使用的数据,就是全局变量,或者常量
栈段一般存储临时使用的数据,比如我们写了一个子程序需要三个参数,我们分别将三个参数压栈
push XX
push XX
push XX
CALL XXX
然后这个名为XXX的子程序在执行完后就会
pop XX
pop XX
pop XX
ret
一系列push和pop完之后栈段恢复原样
栈段一般都是存放临时数据的
也就是所谓的局部变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-8-25 17:00:55 | 显示全部楼层
楼上已经回答的很好了。我想说栈这个数据结构很有特点,因为FIrst in last out, 再结合pop push指令,简化了许多问题的表达。其实ss既然存在肯定有它存在的必要,多看看书就知道了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-8-25 23:05:20 | 显示全部楼层

太谢谢了~·一下豁然开朗了~~不然我一直想不通~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-8-25 23:06:34 | 显示全部楼层
Seandor 发表于 2012-8-25 17:00
楼上已经回答的很好了。我想说栈这个数据结构很有特点,因为FIrst in last out, 再结合pop push指令,简化了 ...

对对~~是该好好看书~~~不过问一下的话会更加明了。。谢谢你了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 04:33

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表