"Pamięci"

Pamięć jest chyba drugą co do ważności składową systemu komputera.
To właśnie tutaj znajduje się stos, wykonywany program i jego dane, system operacyjny ze sterownikami - słowem wszystko, co aktualnie jest potrzebne do pracy komputera.

Istnieją 3 rodzaje pamięci: RAM, ROM i pamięć zewnętrzna.

Aby jednoznacznie określić (zaadresować) jakieś miejsce w pamięci, używa się dwóch dwubajtowych wartości - segment i przesunięcie (offset). Przesunięcie jest liczbą określającą odległość miejsca w pamięci od początku segmentu - np. czwarty bajt pamięci znajduje się w segmencie 0 na przesunięciu 4.

Jak już pisałem - wartości segment i offset są dwubajtowe, czyli maksymalna długość każdego segmentu wynosi 65536 bajtów (64KB).

Ważna uwaga

Wbrew temu, co mogłoby się wydawać, nie prawdą jest, że w pamięci można zaadresować 65536 segmentów *65536 bajtów czyli w sumie ponad 4 miliardy bajtów. Okazuje się bowiem, że początki segmentów w pamięci są przesunięte następny wzgledem obecnego o 16 bajtów - tzn. zerowy bajt segmentu x jest jednocześnie szesnastym bajtem segmentu x-1 i trzydziestym drugim segmentu x-2...

Dzięki takiej organizacji minimalizowane są dziury między programami alokowanymi w pamięci, ale sprawia to jednocześnie, że długość adresowalnego w ten sposób obszaru wynosi 16*65536 czyli 1MB.

 

Powrót do spisu treści kursu

 


Copyright by Grzegorz Złotowicz
Form and Graphics: Michał Stanek

Pytanie komentarz do Autora