正在加载,请耐心等待
段寄存止祖地了足画创国器是因为对内存的分段管理而设置的。计算机需要对内存分段,以分配给不同的程序使用(类似于硬盘分页)。在描述内存分段时,需要有如下段的信息:1.段的大小;2.来自段的起始地址;3.段的管理属性(禁止写入/禁止执行/系统专用等)。需要用8个字石节(64位)存储这些信息360百科,但段寄存器只有16位,因此段寄存器中只能存储段号(segment selector,也译作"段选择符"),再由段号映射到存在内存中的GDT(global (segment) descriptor table,全局段号记录表),读取段的信息。
16位C县却如运服旧指黑PU有四个16位段寄存器,所以,其程序可同时访问四个不同含义的段。
8086CPU有2袁即征0根地址线,最社大可寻址内存空间为1MB。而8086的寄存器只有16位,指令指针(IP)和变址寄存器(SI、DI)也是16位的。用16位的地址寻距氢声执号师资址1MB空间是不可能的。顾置低溶破皮所以就要把内存分段,也就是把1MB空间分为2^4,即16个段,每段不超过64KB(2^16,16位数据线议叫牛未普哪就可以寻址)。在808胡坚外四庆犯6中设置4个1拉约先感6位的段寄存器,用于管理4种段:CS是代码段,DS是数据段,SS是堆栈段,ES是附加段。把内存分段后,每一个段就有一个段基址,段寄存器保存的素伟世就是这个段基址永周九的高16位,这个16位的地址左移四位(后面加上4个0)就可构成20位的段基址。