Materie: | Appunti |
Categoria: | Sistemi |
Download: | 97 |
Data: | 20.06.2007 |
Numero di pagine: | 1 |
Formato di file: | .doc (Microsoft Word) |
Download
Anteprima
stack-assembly_1.zip (Dimensione: 2.69 Kb)
trucheck.it_stack-in-assembly.doc 24 Kb
readme.txt 59 Bytes
Testo
Cos'è lo stack?
Lo stack (tradotto in italiano la pila) è una parte della memoria molto utilizzata
nella programmazione con assembly (o assembler).
Questa porzione di memoria utilizza una gestione di dati del tipo LIFO (Last in First out).
Normalmente viene utilizzato per il salvataggio temporaneo di dati.
Lo stack inizialmente è vuoto e vi si agisce con 2 operazioni:
PUSH OPERANDO
che inserisce un dato (operando) nello stack.
POP OPERANDO
che estrae l'ultimo dato inserito nello stack e lo sposta in "operando".
Funzionamento
Vi sono 2 registri che gestiscono lo stack, SP (che punta sempre la prima “cella vuota” dello stack) ed SS (che punta alla fine dello stack).
Ogni volta che viene inserito un dato il registro SP viene decrementato di 2byte, mentre ogni volta che viene eseguita l’istruzione pop (quindi si estrae un dato dallo stack) il registro SP viene incrementato di 2 byte.