Outils pour utilisateurs

Outils du site


nsi:premiere:exercices:assembleur_python

Assembleur produit par Python

Python dispose de fonctions permettant d'afficher le code assembleur correspondant à un programme. Il faut utiliser le module dis.

Le module produit un résultat comme :

2           0 LOAD_CONST               0 (3)
            2 STORE_NAME               0 (x)

Ces deux lignes viennent de la traduction de la ligne 2 de notre morceau de code.

  • LOAD_CONST 0 (3) signifie que l'on va écrire la valeur 3 dans le registre 0 qui est un des deux registres en entrée de l'UAL.
  • STORE_NAME 0 (x) signifie que l'on va écrire le contenu du registre 0 dans la mémoire étiquetée x.

Testez l'exemple ci-dessous

import dis
code = """
x = 3
y = 5
z = x + y + 3
"""
dis.dis(code)

Vous obtenez un résultat en assembleur. Faites le lien entre l'assembleur et le code Python.

Passez à l'assembleur

  1. Écrivez un programme python permettant de sommer les entiers de 1 à 10,
    Utilisez une boucle while
  2. afficher l'assembleur correspondant,
  3. traduisez ce code assembleur en une version comprise sur LMC et testez le fonctionnement sur LMC.
nsi/premiere/exercices/assembleur_python.txt · Dernière modification : de goupillwiki