Nwlapcug.com


Che cosa è un Offset di memoria?

Un computer memorizza i dati dei programmi in esecuzione nella memoria principale per l'accesso rapido. Ciò consente al computer di eseguire più programmi contemporaneamente. Per raccogliere i dati quando è necessario, il computer deve conoscere l'indirizzo dei dati nella memoria principale. Tuttavia, i primi computer non aveva lo spazio disponibile per memorizzare indirizzi più lunghi nei registri del processore. Pertanto, un regime di offset è stata introdotta per dare processori un modo per affrontare grandi blocchi di memoria con limitato spazio d'indirizzamento.

Indirizzamento assoluto e relativo

Memoria viene fornito con due categorie generali, ognuno dei quali rappresenta una determinata visualizzazione di come dovrebbe organizzare la memoria. Il "assoluto" mapping di memoria dà un'identificazione univoca per ogni posizione di memoria. Questa indicazione di memoria rende dati di mapping per gli indirizzi di memoria molto più facile per gli esseri umani. Tuttavia, per le macchine, una mappatura "relativa" aiuta a contrastare alcune delle sue funzionalità creando matematico offset per accedere ai dati.

Indirizzamento di memoria e dimensione del registro

Il motivo per assumere un aspetto relativo all'interno del computer di indirizzamento della memoria ha a che fare con registro di dimensione. Un "registro" è una posizione nel processore che contiene un valore. Nell'accesso alla memoria, un registro conterrà un indirizzo di una posizione in memoria. Tuttavia, i formati di registro sono limitati: un registro a 16 bit può contenere solo 16 cifre binarie, per un valore positivo massimo di 65.536. Questo significa un registro a 16 bit può solo indirizzo 65, 536 posizioni di memoria. Spesso, la memoria rappresenta molti indirizzi dati di più di questo. Per risolvere questo problema, è stato sviluppato un sistema di offset di memoria.

Indirizzamento di segmento: Offset

Questo schema, chiamato "segmento: offset" indirizzamento, ammessi piccoli registri di indirizzi superiori indirizzo in memoria. Il modo di indirizzamento di segmento: offset si riferisce a un indirizzo assoluto è prendendo un valore di segmento, moltiplicando tale numero 16, e aggiungendo un offset. Questo processo consente l'indirizzamento dei valori più alti in memoria mediante compensazione un valore oltre il valore massimo del registro. Interessante, molte combinazioni di segmento/offset diverso possono riferirsi a un singolo indirizzo assoluto.

L'Area di memoria alta

I primi 65520 byte di memoria dopo "reale" memoria fisica è denominata "area di memoria alta." Questa area di memoria è l'unica parte di memoria estesa che può accedere al computer mentre si è in modalità "reale". Modalità reale limita l'accesso di memoria del processore per "veri" dati accessibili tramite indirizzo diretto, determinata dalla dimensione di indirizzo. Programmi per MS-DOS, che ha provenuto nei giorni di 8 e 16-bit computing, spesso utilizzano questa modalità di elaborazione per indietro compatibilità.