Skip to content

Memory segments

Frederik Tobner edited this page Feb 16, 2023 · 6 revisions

The memory used by an 8086 execuable is divided into four segments:

  • Code segment (CS) - memory segment where the executable program is stored
  • Data segment (DS) - memory segment where the data of the program is stored
  • Extra segment (ES) - another data segment in memory
  • Stack segment (SS) - memory segment used to store stack data

For each of these segments a special purpose register, that stores the base address (address of the start of the segment) of the segment, is provided. These registers are part of the BIU of the processor. The phyisical adress is computed by multiplying the content of the segment register with 0x10 and adding the content of the offset register.

Clone this wiki locally