Ciao a tutti.
Non ho capito perché bisogna salvare un registro nella memoria e poi ripristinarlo. So che i dati vengono conservati in memoria quando questi ultimi fanno parte di una struttura dati, come ad esempio un vettore di elementi. Spostiamo i valori nella memoria perché i registri sono limitati. Ma non ho capito il perché si usa questa tecnica anche in questo programma:
int esempio_foglia( int g, int h, int i, int j) {
int f;
f = (g + h) - (i + j);
return f;
}
Il libro praticamente aggiorna lo stack pointer per far spazio ad un elemento in memoria. Questo elemento è f. In pratica salva f nello stack (pila) e poi a fine funzione lo ripristina. Non ho capito perché il valore deve essere salvato e poi ripristinato e poi perché proprio f ?
Se non avete capito la domanda ditemelo.
Grazie.