E>На вскидку, как минимум, можно вспомнить про длинные (far) адреса в архитектуре x86 — они представленны парой сегмент:смещение, E>причем в далеком REALMODE один и тот же указатель мог быть представлен нескольким вариантами (база сегмента определяла имела шаг в памяти в 1 параграф (16 байт).
E>В реализациях языка С++ указатели на элементы класса обычно (и всегда при виртуальном наследовании) представленны в виде структуры из нескольких полей.
Виртуальный адрес 0xXXXXXXXX в linux абстрактная матрёшка cr3->pgd_t->pmd_t->pte_t->page->offset
Но при этом 0xXXXXXXXX+0xYYYYYYYY=0xZZZZZZZZ
Поэтому повторю, что в контексте print (int*)2+3 это просто вывод числа 14 экран.