Debugger: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
→‎Descrizione: Memoria (informatica)
Riga 9:
Se si utilizza un [[Interprete (informatica)|interprete]] il debugging è molto più naturale per la natura stessa dell'interpretazione.
 
Quasi tutti i debugger consentono l'esecuzione del programma analizzato a piccoli passi, mostrando nelle interruzioni il codice relativo all'istruzione sorgente corrente e lo stato attuale della [[CPU]] ovvero lo stato o valore delle [[variabile (informatica)|variabili]] associate alle rispettive nelle celle di [[memoria (informatica)|memoria]]. L'interruzione dell'[[esecuzione (informatica)|esecuzione]] può avvenire passo passo ad ogni singola istruzione, entrando eventualmente in altri sottoprogrammi, oppure in punti esplicitamente assegnati dall'utente ([[breakpoint]] o watchpoint). L'ultima istruzione evidenziata prima del crash è tipicamente il punto o causa dello scatenarsi dell'evento indesiderato, anche se in linea di massima questa può a sua volta dipendere da risultati di istruzioni precedenti (es. valori nulli di variabili o parametri passati).
 
Molti debugger contengono funzioni più sofisticate come la possibilità di modificare il valore di alcune locazioni di [[Memoria (informatica)|memoria]] o la possibilità di modificare il flusso del programma eseguendo delle parti di codice macchina che normalmente non vengono raggiunte.