При работе с архитектурами с сегментированной памятью (например, в реальном режиме x86) можно выделить три типа адресов указателей (примеры для x86 в сегменте: смещение):
рядом
Сохраняет только часть смещения (которая является 16-битной) - при разрешении такого указателя текущее смещение сегмента данных будет использоваться в качестве адреса сегмента.
* до 1014 *
Сохраняет адрес сегмента и смещения (16 бит каждый), таким образом определяя абсолютный физический адрес в памяти.
огромный
То же самое, что и указатель на дальность, но может быть нормализовано, то есть 0000:FFFF + 1
будет соответствующим образом перенесено на адрес следующего сегмента.
В современных ОС это больше не имеет значения, поскольку модель памяти обычно плоская, с использованием виртуальной памяти вместо прямого обращения к физической памяти (по крайней мере, в приложениях кольца 3).