теперь я знаю, что этот вопрос задан довольно много раз, но мне не интересно, сколько памяти 32-битный процессор не может решить ни теоретически, ни практически. просто быстрый хедз-ап, я родом из гражданского строительства, поэтому я все еще учился с точки зрения компьютерных наук; а также единицы измерения для меня - это большой вопрос, который на самом деле мой вопрос:32bit cpu: сколько памяти он может использовать?
Теперь я знаю, что вы можете рассчитать, сколько памяти процессор может использовать, выполнив 2^32 (или 64), и в этом случае вы получите 4.294 .967,296 бит. Теперь я знаю (или я думаю, что знаю) память измеряется в байтах, поэтому, чтобы узнать, сколько байтов памяти может использовать процессор, я разделяю 4.294.967.296/8, и вы получите 536.870.912 байт. , тогда вы разделите 536.870.912/1024 и получите 524.288 килобайт. , тогда вы разделите 524.288/1024 и получите 512 мегабайт. , тогда вы разделите 512/1024 и получите 0,5 гигабайта, который ... не велик.
теперь я заметил, что если вы не разделите на 8 в начале, вы получите 4 гигабита; поэтому мой вопрос: измеряется ли бит в битах или байтах. , и если это сейчас, то какова связь между битами адреса процессора и емкостью памяти?
Память адресуется в байтах. – Phylogenesis
"* и в этом случае вы получите 4.294.967.296 бит *" - нет. Вы получаете байты из этого расчета. В _theory_ 32-битный процессор может иметь адрес 4 ГБ, но на практике это обычно всего 2 ГБ из-за физического дизайна (хотя и не знаю точных данных) и примерно 1,5 ГБ из-за пределов операционной системы –
@a_horse_with_no_name ограничение 2GiB это программный дизайн :) Из-за MMIO некоторые физические адреса должны использоваться устройствами, но не более 2GiB. Кроме того, 32-разрядная машина может получить доступ к памяти произвольного размера, что не учитывает размер регистра, но 1) размер шины/физического адреса 2) размер слова памяти. Хотя OP, вероятно, спрашивает о x86, в этом случае 2) уменьшает, как вы правильно сказали, к байтам [еще 1) все равно может быть 32 или 36 бит]. –