Это не столько преимущество, сколько аксиома - модель сегментации реального режима 8086 разработана на аппаратном уровне, так что регистр сегмента определяет границу абзаца.
Сегментный регистр определяет базовый адрес старших 16 битов 20-разрядного адресного пространства 8086, младшие 4 бита этого базового адреса по существу были обнулены.
Сегментированная архитектура была одним из способов, позволяющих архитектуре 16-разрядных регистров 8086 иметь возможность адресовать полный мегабайт (!) Адресного пространства (для которого требуется 20-битная адресация).
Для еще большей истории следующий шаг, который Intel предприняла в архитектуре x86, заключался в том, чтобы абстрагировать регистры сегментов от непосредственного определения базового адреса. Это был защищенный режим 286, где регистр сегмента содержал «селектор», который вместо определения битов для физического базового адреса представлял собой индекс для набора таблиц дескрипторов, которые содержали информацию о физическом адресе, разрешения для доступа к физическому адресу. память и другие вещи.
Сегментные регистры в современных 32-разрядных или более мощных процессорах x86 по-прежнему делают это. Но с учетом того, что смещения адресов могут указывать полные 32-битные адресации (или 64-битные на процессорах x64) и таблицы страниц, способные обеспечить семантику виртуальной памяти в сегменте, определенном селектором, модель программирования по существу устраняет необходимость манипулировать сегментными регистрами на уровне приложения. По большей части, ОС устанавливает регистры сегментов один раз, и больше ничего не нужно с ними иметь дело. Поэтому программистам вообще не нужно больше знать, что они существуют.