rien
Ecrire un programme
Ecrire un programme
Aujourd'hui, un programme s'écrit dans un langage de haut niveau
C#, Java, Python, C++, etc.
Exemple d'instruction de haut niveau
ranger dans la variable "a" le contenu de la variable
"b" auquel on ajoute "1"
a = b+1
3 catégories de langages
Compilés
Interprétés
Intermédiaires
Langages compilés
Totalité du code source traduite (compilée) en une fois par le compilateur en code assembleur .
Production du code objet (binaire)
Création de l’executable, autonome.
C/C++, Fortran, ADA, Pascal
Avantages : code source sécurisé, exécution rapide Inconvénients : portabilité impossible d’un OS à un autre, nécessite une recompilation après modification de la source
Chaine de production de programme :
Compilation
Les instructions de haut niveau sont traduites en mnémoniques assembleur (= instructions de bas niveau réalisables par le CPU)
Cette traduction s'appelle compilation
Chaine de production de programme : Compilation
Compilation
Variable emplacement en RAM (adresse)
Instruction de haut niveau suite d’instructions simples du CPU
Exemple pour l'instruction de haut niveau "a = b+1"
LOAD R1,@00000004
LOAD R2,#1
ADD R0,R1,R2
STOR @00000008,R0
;
;
;
;
R1RAM(00000004)
R21
R0 R2+R1
RAM(00000008)R0
Chaine de production de programme : Assemblage
Les mnémoniques assembleur sont ensuite traduites en codes binaires
Cette
traduction s'appelle assemblage
Les codes binaires sont stockés dans un fichier Fichier
"exécutable"
Chaine de production de programme : Exécution
Lorsqu'on double clique sur un fichier exécutable Le
contenu du fichier est chargé en RAM
Le CPU peut alors exécuter ces instructions
Cycle
fetch|decode|execute
Langages interprétés
Chaque ligne de la source est