W pytaniu kluczowa jest informacja o 32-bitowej szynie adresowej. To ona określa, ile różnych adresów można wygenerować na liniach adresowych i tym samym ile komórek pamięci da się bezpośrednio wskazać.
Jeżeli adres ma n bitów, to może przyjąć 2^n różnych wartości (od 0 do 2^n − 1). Dla 32 bitów otrzymujemy więc 2^32 unikalnych adresów, a zatem 2^32 komórek pamięci możliwych do bezpośredniego zaadresowania.
Dlaczego pozostałe odpowiedzi nie pasują?
- 2^64 wynikałoby z 64-bitowej przestrzeni adresowej. Sama informacja "64-bitowy procesor" nie oznacza automatycznie 64-bitowej szyny adresowej; w pytaniu podano wprost, że szyna adresowa ma 32 bity.
- 32^2 i 64^2 to typowy błąd rachunkowy i pojęciowy: mylenie liczby kombinacji bitów (potęga 2) z podniesieniem liczby bitów do kwadratu. W adresowaniu binarnym liczba możliwych stanów rośnie wykładniczo (2^n), a nie kwadratowo.
W praktyce, gdy spotykasz opis sprzętu, zawsze rozdzielaj: długość słowa/architektury procesora (np. 64-bit) oraz szerokość (fizyczną) magistrali adresowej. To drugie bezpośrednio determinuje rozmiar przestrzeni adresowej widzianej "na zewnątrz" bez dodatkowych mechanizmów.