hr
This commit is contained in:
@@ -16,7 +16,9 @@ Cela signifie que le programme est transformé avant exécution.
|
|||||||
Chaque compilateur :
|
Chaque compilateur :
|
||||||
- implémente la norme C
|
- implémente la norme C
|
||||||
- peut ajouter des extensions
|
- peut ajouter des extensions
|
||||||
- produit du code pour une architecture donnée
|
- produit du code pour une architecture donnée .
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
### Exemple
|
### Exemple
|
||||||
|
|
||||||
@@ -30,6 +32,8 @@ gcc main.c -o prog
|
|||||||
|
|
||||||
La compilation est une pipeline.
|
La compilation est une pipeline.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
### Étape 1 — Préprocesseur
|
### Étape 1 — Préprocesseur
|
||||||
|
|
||||||
Traite :
|
Traite :
|
||||||
@@ -45,6 +49,8 @@ Exemple :
|
|||||||
|
|
||||||
Le contenu du fichier est copié dans le code.
|
Le contenu du fichier est copié dans le code.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
### Étape 2 — Compilation
|
### Étape 2 — Compilation
|
||||||
|
|
||||||
C → assembleur
|
C → assembleur
|
||||||
@@ -96,12 +102,16 @@ Il dépend de la toolchain.
|
|||||||
- **Android (NDK)** :
|
- **Android (NDK)** :
|
||||||
- utilise **Clang + LLVM**
|
- utilise **Clang + LLVM**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
### Exemple GAS
|
### Exemple GAS
|
||||||
|
|
||||||
```asm
|
```asm
|
||||||
movl $5, %eax
|
movl $5, %eax
|
||||||
```
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
### Exemple Intel
|
### Exemple Intel
|
||||||
|
|
||||||
```asm
|
```asm
|
||||||
|
|||||||
Reference in New Issue
Block a user