汇编语言中 cs, ds,ss 的区别

 

CS(Code Segment):代码段寄存器
DS(Data Segment):数据段寄存器
SS(Stack Segment):堆栈段寄存器
ES(Extra Segment):附加段寄存器。
当一个程序要执行时,就要决定程序代码、数据和堆栈各要用到内存的哪些位置,通过设定段寄存器 CS,DS,SS 来指向这些起始位置。通常是将DS固定,而根据需要修改CS。

 

1.代码段寄存器CS:存放当前正在运行的程序代码所在段的段基值,表示当前使用的指令代码可以从该段寄存器指定的存储器段中取得,相应的偏移值则由IP提供。  
2, 数据段寄存器DS:指出当前程序使用的数据所存放段的最低地址,即存放数据段的段基值。  
3, 堆栈段寄存器SS:指出当前堆栈的底部地址,即存放堆栈段的段基值。

 

CS、DS就是所谓的段寄存器。一个程序往往分为好几个段。CS中保存了代码段的基地址,DS保存的是数据段的基地址,而IP中保存的是所要执行的下一条指令的地址

 

https://zhidao.baidu.com/question/347752668.html

posted @ 2019-08-17 14:55  狂奔~  阅读(5124)  评论(0编辑  收藏  举报