Segments logically divide a program into logical entities of Code, Data and Stack each having a specific size of 64K. The segment register holds the upper 16 bits of the starting address of a logical group of memory, called the segment.
The main advantages of using segments are:
Logical division of program, thus enhancing the overall possible memory use and minimize wastage.
The addresses that need to be used in programs are relocatable as they are the offsets. Thus, the segmentation supports relocatability.
Although the size of address is 20 bits, yet only the maximum segment size, that is 16 bits, needs to be kept in instruction, thus reducing instruction length.
Segments logically divide a program into logical entities of Code, Data and Stack each having a specific size of 64K. The segment register holds the upper 16 bits of the starting address of a logical group of memory, called the segment.
The main advantages of using segments are: