Aller au contenu principal

Produire une trace d'exécution

Si un as un morceau de code, on peut souhaiter savoir dans quel ordre les instructions sont exécutées.

Principe

On veut accomplir 2 éléments principaux :

  1. indiquer quelles lignes de code s'exécutent dans quel ordre
  2. indiquer les effets de chaque ligne de code
  3. indiquer la pile d'appels

Code

Si on a le code suivant :

fun main() {
val a = 3 + 4
val b = a * 2
println("salut " + b)
}

Trace

On aura la trace suivante :

ligne exécutéeeffetpile d'appels
val a = 3 + 4a: 7main
val b = a * 2a: 7, b: 14main
println("salut " + b)a: 7, b: 14, affiche "salut 14"main

Dans le cas d'une séquence d'instructions, on peut voir que les instructions sont exécutées dans l'ordre de lecture du code. Simple!

Pour voir le code des tableaux markdown, ICI.

Note : pour chaque page de ce site, tu peux cliquer sur le bouton Éditer cette page en bas pour voir le code markdown.