Segmentation

There are some special combinations of segment registers and general registers that point to important addresses:

Register PairFull NameDescription
CS:IPCode Segment : Instruction PointerPoints to the address where the processor will fetch the next byte of code.
SS:SPStack Segment : Stack PointerPoints to the address of the top of the stack, i.e., the most recently pushed byte.
SS:BPStack Segment : Base PointerPoints to the address of the top of the stack frame, i.e., the base of the data area in the call stack for the currently active subprogram.
DS:SIData Segment : Source IndexOften used to point to string data that is about to be copied to ES:DI.
ES:DIExtra Segment : Destination IndexTypically used to point to the destination for a string copy, as mentioned above.