Теоретические пределы памяти в 16, 32 и 64-битных машинах следующие ...
Принципиальным недостатком здесь является представление о том, что «битовая ширина» процессора, которая обычно равна размеру регистров общего назначения машины, обязательно равна ширине адресов ОЗУ.
В x86 с включенной подкачкой, но без PAE, адреса, которые используют программный код и код операционной системы, называются Intel «линейными адресами» - мы обычно называем их «виртуальными адресами». Их ширина 32 бита. Это позволяет виртуальное адресное пространство 4 ГиБ.
Но это более или менее совпадение, просто артефакт формата записей таблицы страниц, что размер физического (RAM) адреса также составляет 32 бита.
С PAE последний составляет 36 бит (сначала ... шире в последующих реализациях). Таким образом, то, что это, например, «32-разрядный компьютер», не означает, что адреса физической памяти ограничены 32-разрядными.
В отрасли существует длинная история машин, чья «битовая ширина» не соответствует их максимальному размеру физического адреса. Например, архитектура VAX определяет 32-разрядную машину, а виртуальные адреса (которые являются адресами, используемыми кодом после включения преобразования адресов) действительно имеют ширину 32 бита ... но физические адреса VAX имеют ширину всего 30 бит - и половина физического адресного пространства отводится регистрам устройств ввода-вывода, поэтому максимальный объем оперативной памяти составил всего 512 МБ.
Даже без аппаратного обеспечения преобразования адреса не обязательно, что «битовая ширина» машины определяет максимальный адрес ОЗУ. Пример: CDC серии "upper 3000" были 36-битными машинами. Как вы думаете, они могли бы адресовать 64 ГиБ оперативной памяти? Не вряд ли! Эти машины появились в середине 60-х! Черт, в те дни у нас не было даже 64 ГБ дискового пространства . (Серия CDC 6000 была 60-битной машиной. Нужно ли продолжать?)