84 Anatomia PC
Struktura danych odczytanych z rejestru adresu bazowego podczas określania rozmiaru bloku pamięci zależy od tego, czy adres powinien być umieszczony w pamięci operacyjnej, czy w przestrzeni wejścia-wyjścia.
Zawartość rejestru adresu bazowego zawierającego adres pamięci operacyjnej ma następującą strukturę:
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bil |
bit |
bit |
bit |
bit |
bit |
bit |
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
bit |
bit |
bit |
bil |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
0 |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
•2 |
1 |
bity 31-4
rozmiar bloku pamięci operacyjnej (jeżeli adres może być umieszczony w 64-bitowej przestrzeni adresowej, rozmiar bloku kodowany jest w bitach 63-4 - wykorzystywane są dwa kolejne rejestry);
bit 3 bity 2-1
bilO
I - blok pamięci nie może być cache'owany,
0 - blok pamięci może być cache’owany;
II - zarezerwowane,
10 - adres umieszczony jest w 64-bitowej przestrzeni adresowej.
01 - adres umieszczony jest poniżej 1 MB,
00 adres umieszczony jest w 32-bitowej przestrzeni adresowej,
1 adres umieszczony jest w przestrzeni wejścia-wyjścia,
0 - adres umieszczony jest w pamięci operacyjnej.
Zawartość rejestru adresu bazowego zawierającego adres pamięci operacyjnej ma następującą strukturę:
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bit |
bil |
bit |
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
bit |
bil |
bit |
bit |
bit |
bil |
bit |
bit |
bit |
bit |
bit |
bil |
bit |
bit |
bit |
1 |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
bity 31-2 rozmiar bloku przestrzeni wejścia-wyjścia;
bit I zarezerwowany;
bit 0 I adres umieszczony jest w przestrzeni wejścia-wyjścia,
0 - adres umieszczony jest w pamięci operacyjnej;
Rozmiar bloku pamięci określany jest przez pierwszy ustawiony bit w obszarze bloku pamięci (na przykład ustawiony bit 8 oznacza blok 256-bąjtowy). Najmniejszy możliwy do określenia blok pamięci wynosi 4 bajty w przestrzeni wejścia-wyjścia i 16 bajtów w pamięci operacyjnej.