Memoria del computer ha due dimensioni: una lunghezza e una larghezza . Un singolo chip di memoria può avere una lunghezza di un milione di celle di memoria (note anche come indirizzi ) , ciascuno dei quali sono 8 bit o 1 byte , largo . Anche se il chip è largo 1 byte , il controller di memoria può accedere a diversi byte in una volta . Quando diversi byte sono unite insieme , formano una parola . Una parola è di solito 2 , lungo 4 o 8 byte. Se si dispone di un controller di memoria che accede solo indirizzi di parole , è possibile inviare un byte di dati ad esso utilizzando imbottitura. Cose che ti serviranno
controllore di memoria e scheda tecnica ( vedi Risorse ) economici Mostra più istruzioni
1
scoprire quanto tempo ogni parola è sulla vostra memory controller . Potrebbe essere necessario guardare questa figura nel foglio dati che corrisponde al controller . Supponiamo che il vostro controller di memoria usa parole di 4 byte di lunghezza .
2
sottrarre il numero di byte per parola da 1 . Questo è il numero di byte di riempimento è necessario aggiungere ai vostri dati prima di collegarlo al l'indirizzo del canale . Continuando con la parola assunzione di 4 byte , è necessario aggiungere altre 3 byte di padding per il byte di dati .
3
Aggiungi byte di riempimento per il byte di dati che si desidera collegare al l'indirizzo del canale . Utilizzando il codice binario , ogni byte dovrebbe essere 00000000 . Ad esempio, se il byte ha il valore binario 11111111 , si dovrebbe aggiungere 3 byte composto da otto zeri alla fine di tali dati e di ottenere la parola di 4 byte in binario :
11111111 00000000 00000000 00000000 < br >
4
Spostare la parola di 4 byte per l'indirizzo desiderato utilizzando il linguaggio di programmazione a scelta. Per esempio, in linguaggio assembly x86 , è possibile spostare i dati per l'indirizzo " ADDR " scrivendo la dichiarazione di seguito elencati . Si noti che gli spazi tra i byte sono stati rimossi e le lettere " xB " è stato aggiunto ai dati . Questo dice l'assemblatore che si tratta di un numero binario .
Movl ADDR , 11111111000000000000000000000000xB