Существует много разных типов процессоров (ARM, MIPS, x86,…).
Я могу просто поговорить о x86 (32-битных) / x86-64 (64-битных).
Количество бит относится в основном к размеру регистра.Для x86 виртуальное адресное пространство ограничено 32-битным (4 ГБ) .Это означает, что 32-разрядное приложение (приложение, которое предполагает, что оно работает на 32-разрядном ЦП) может видеть только 4 ГБ сразу.
Для x86-64 все виртуальные адреса имеют 64-разрядный размер.Но процессоры могут не поддерживать все 64-битные, так как все неподдерживаемые биты должны иметь одинаковое значение с наиболее значимым поддерживаемым битом.ОС должна запросить количество поддерживаемых битов.(мой Core i5 поддерживает здесь 48 бит)
Физическое адресное пространство, то есть объем памяти, который фактически может обрабатываться ЦП, для x86, в первую очередь, 32-битный.Но начиная с Pentium 1, процессоры поддерживают расширение Pyisical Address Extension (PAE) , позволяющее до 36-битной (64 ГБ) оперативной памяти.(ОС должна включить расширение)
На данный момент x86-64 ограничивает физическое адресное пространство 52-битным (4PiB) .Где и здесь процессоры бесплатно поддерживать меньше битов.(мой Core i5 поддерживает здесь 36-битную версию)
Поскольку и x86, и x86-64 используют одинаковые коды операций со слегка отличающимися значениями, 32-битное приложение не может просто работать на 64-битном процессоре (в 64-bit mode / long mode).
Но у x86-64 есть так называемый режим совместимости (подрежим long-mode), который позволяет выполнять 32-битные приложения.(ОС должна переключать режим.)
Карта памяти не выбрана процессором.За это отвечает основной процессор и BIOS, и он может быть частично настроен операционной системой.Причиной, по которой производители материнских плат и BIOS хранят все содержимое в нижнем 4 ГБ адресного пространства, является совместимость с 32-разрядными ОС.(Из соображений совместимости со старыми 16-битными DOS-приложениями даже процессоры x86-64 по умолчанию отключают доступ ко всем 2-м МБ физического адресного пространства)
Как упоминалось выше, x86-64 ограничивает физическое адресное пространство52-битный по спецификации.Дальше адресное пространство ограничено реализацией процессора и еще дальше - реализацией mainbord.(Все это сделано для снижения затрат на внедрение).Таким образом, нет никакого способа обратиться к 2⁶⁴ ОЗУ.