Rumah >masalah biasa >段寄存器的种类和作用是什么

段寄存器的种类和作用是什么

青灯夜游
青灯夜游asal
2021-01-22 16:35:2113642semak imbas

段寄存器的种类和作用:1、代码段寄存器CS,用于存放当前正在运行的程序代码所在段。2、数据段寄存器DS,用于存放数据段。3、堆栈段寄存器SS,存放堆栈段。4、附加段寄存器ES,存放当前程序使用附加数据段。

段寄存器的种类和作用是什么

本教程操作环境:windows7系统、Dell G3电脑。

段寄存器是因为对内存的分段管理而设置的。计算机需要对内存分段,以分配给不同的程序使用(类似于硬盘分页)。在描述内存分段时,需要有如下段的信息:1.段的大小;2.段的起始地址;3.段的管理属性(禁止写入/禁止执行/系统专用等)。需要用8个字节(64位)存储这些信息,但段寄存器只有16位,因此段寄存器中只能存储段号(segment selector,也译作“段选择符”),再由段号映射到存在内存中的GDT(global (segment) descriptor table,全局段号记录表),读取段的信息。

段寄存器:在8086系统中,访问存储器的地址码由段地址和段内偏移地址两部分组成。段寄存器用来存放各分段的逻辑基值,并指示当前正在使用的4个逻辑段,包括代码段寄存器CS、堆栈段寄存器SS、数据段寄存器DS和附加段数据寄存器ES。

种类和作用:

1、代码段寄存器CS(Code Segment)

存放当前正在运行的程序代码所在段的段基址,表示当前使用的指令代码可以从该段寄存器指定的存储器段中取得,相应的偏移量则由IP提供。

2、数据段寄存器DS(Data Segment)

指出当前程序使用的数据所存放段的最低地址,即存放数据段的段基址。

3、堆栈段寄存器SS(Stack Segment)

指出当前堆栈的底部地址,即存放堆栈段的段基址。

4、附加段寄存器ES(Extra Segment)

指出当前程序使用附加数据段的段基址,该段是串操作指令中目的串所在的段。

想要查阅更多相关文章,请访问PHP中文网!!

Atas ialah kandungan terperinci 段寄存器的种类和作用是什么. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:集线器的作用是什么Artikel seterusnya:亚马逊是什么