Segment Register

  

8086 has four 16-bit segment registers: CS, DS, SS, ES, which are used to store the code segment of the executable code, the data segment, the stack segment, and the base address of other segments. In the 80386, there are six 16-bit segment registers, but these segment registers are no longer the base address of a segment, but a selector of a segment. Since the 16-bit register cannot store the 32-bit segment base address, the segment base address has to be stored in a table called a descriptor table (Descriptor). Therefore, in the 80386, we call the segment register a selector. The names and uses of the six segment registers are given below:

CS code segment registers

DS data segment registers

SS stack segment registers

ES, FS and GS Additional Data Segment Registers

The segment selector, descriptor table, and system table address registers are described in detail in the Segment Mechanisms section.

Copyright © Windows knowledge All Rights Reserved