Salve,
non capisco bene il comportamento del Program Counter e dello Stack pointer nel momento in cui viene chiamato un sottoprogramma. Cito questi due perchè mi sono sembrati i registri maggiormente coinvolti, ma molto probabilmente anche altri vengono modificati al fine di eseguire questa operazione. Cioè, in pratica mi interesserebbe la descrizione dettagliata del loro comportamento dal momento appena precedente alla chiamata al sotto-programma fino al momento dell'uscita da esso e della ripresa del normale ciclo di istruzioni.
Oltretutto vi sarei molto grato se mi accompagnaste la spiegazione con un frammento di codice Assembler che mostra la chiamata ad un sottoprogramma.
Se non riuscite a spiegarmelo, linkate pure delle fonti dove la cosa è spiegata bene, io non ne ho trovate purtroppo, o meglio, ho trovato slide di corsi universitari di varie zone, ma non c'è qualcosa che con l'aiuto di un testo, senza essere eccessivamente riassuntivo, spieghi bene il procedimento e tutto quello che avviene e viene modificato passo per passo.
Inoltre se conoscete testi sull'argomento vi chiederei di consigliarmeli.
Vi ringrazio molto.