2017-01-20 8 views
0

Я понимаю, что 32-разрядная ОС может иметь 2^32 памяти и 2^32 почти равна 4 миллиардам. Но почему память составляет 4 ГБ? 1 байт - 8 бит, а в каждой ячейке памяти - 4 байта = 32 бит. Итак, 2^32 раза 4 должно равняться 4 * 4 * (2^30) = 16 ГБ?Какова связь между 32-разрядной и 4-Гбайт-памятью?

+0

Не каждый адрес памяти является байтовым адресом, это один байт. – GRAYgoose124

+0

Поскольку ячейки памяти составляют 1 байт, а не 4 байта. –

+1

Адреса являются байтовыми адресами. Вы можете адресовать до 4 миллиардов байт или 2 миллиарда 16-битных значений или 1 миллиард 32-битных значений, используя миллиард в смысле «двоичного миллиарда». –

ответ

1

2^32 байта = 4294967296 байт = 4194304 КБ = 4096 МБ = 4 ГБ.

32-разрядная ОС использует 32-разрядные указатели. Наибольшее значение может указывать на 2^32 - 1. Таким образом, 32-разрядная ОС может видеть только 4 ГБ памяти.