Pomnilniška enota (ang. Memory Management Unit) je računalniška komponenta, odgovorna za pomnilniški dostop, kot ga procesor zahteva. Naloga pomnilniške enote je pretvorba navideznega naslova v fizični naslov.

Naslavljanje thumb|300px|Lokacija logičnega naslova v linearnem. Računalniški program sam ne more spreminjati lokacije segmentov. Posredno lahko spreminja položaj logičnega naslova za kodni in skladovni segment. Položaj podatkovnega segmenta se izračuna s posebnimi formulami. Zaradi različnosti podatkov, poznamo več formul za izračun položaja. Logočni naslov sestavlja 16-bitni segment in 32-bitni položaj. Kadar je segment procesorju znan (je v segmentnih registrih), procesor operira z bližnjimi kazalci. Če pa segment ni znan, pa operira z oddaljenimi kazalci.

Glavna formula za izračun položaja je slednja:

baza, indeks: vrednost vsestranskega registra, skala: število 2, 4 ali 8 ki je pomnoži z indeksu, premik: 8-, 16- ali 32-bitna vrednost.

Iz te osnovne formule pa dobimo pet formul. Vsaka je namenjena za določene pomnilniške posege. premik: predstavlja neposreden naslov operanda v določenemu segmentu, baza: predstavlja posreden naslov operanda v določenem segmentu, baza + premik: formula lahko služi kot premik po polju, kjer velikost polja ni 2, 4 ali 8 bajtov ali pa kot dostop do polja v zapisu. (indeks * skala) + premik: indeksiranje po statičnem polju, kjer je element velik 2, 4 ali 8 bajtov baza + indeks + premik: naslavljanje v dvodimenzionalnem polju

Kategorija:Upravljanje s spominom