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

汇编语言中 cs, ds,ss 的区别我再写程序的时候  怎么知道该用哪个啊? 我是新手 请大家帮我解答下,越详细越好!!

一、寄存器位置不同:

1、CS:代码段寄存器;

2、DS:数据段寄存器;

3、SS:堆栈段寄存器。

二、存放位置不同:

1、代码段寄存器CS:存放当前正在运行的程序代码所在段的段基值。

2、数据段寄存器DS:存放数据段的段基值。

3、堆栈段寄存器SS:存放堆栈段的段基值。

三、段地址不同:

1、cs代码段地址,联合ip作为cpu指向当前正在执行的那条指令所使用,不能随意修改它。

2、ss堆栈度段地址问联合sp定义一个答堆栈,一旦你确定了堆栈地址,ss也不能随便改变了。

3、ds数据段地址定义一个数据段。

扩展资料:

汇编语言的特点是能被计算机直接识别和执行,使用它进行编程可以减少占用空间、提高运行速度,并能直接对硬件实施控制。

在需要实时控制的时候,有着不可替代的重要地位,但汇编语言在编程和理解时要复杂、困难一些,尤其是在进行数据处理或是逻辑运算时更加凸显出其劣势。

高级语言是面向使用者的语言,能更准确地被程序员所理解,它的表达能力强,功能多,编程效率高,上手速度快,自动化程度高,因而更受欢迎。

在大部分软件开发中,使用者都采用高级语言编程,以提高编程效率。但在要求存储空间小,执行速度快,需直接对硬件进行控制的场合,则应用汇编语言编程,以达到优化程序速度的目的。

参考资料:

百度百科-汇编语言 (面向机器的程序设计语言)

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-16
1.代码段寄存器CS:存放当前正在运行的程序代码所在段的段基值,表示当前使用的指令代码可以从该段寄存器指定的存储器段中取得,相应的偏移值则由IP提供。  
2, 数据段寄存器DS:指出当前程序使用的数据所存放段的最低地址,即存放数据段的段基值。  
3, 堆栈段寄存器SS:指出当前堆栈的底部地址,即存放堆栈段的段基值。本回答被提问者采纳
第2个回答  推荐于2017-09-26
汇编语言中CS,DS,SS还有一个ES定义如下:
CS(Code Segment):代码段寄存器;
DS(Data Segment):数据段寄存器;
SS(Stack Segment):堆栈段寄存器;
ES(Extra Segment):附加段寄存器。
当一个程序要执行时,就要决定程序代码、数据和堆栈各要用到内存的哪些位置,通过设定段寄存器 CS,DS,SS 来指向这些起始位置。通常是将DS固定,而根据需要修改CS。
第3个回答  2016-12-24
CS、DS就是所谓的段寄存器。一个程序往往分为好几个段。CS中保存了代码段的基地址,DS保存的是数据段的基地址,而IP中保存的是所要执行的下一条指令的地址。
第4个回答  2011-12-04
cs 代码段地址,联合ip作为cpu指向当前正在执行的那条指令所使用,你一般不能随意修改它
ss 堆栈段地址 联合sp定义一个堆栈,一旦你确定了堆栈地址,ss也不能随便改变了
ds 数据段地址 定义一个数据段
如果你是新手的话,有需要的时候,你可以用ds和es,随着更加深入的学习你会了解具体怎么用的。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网