je viens de me rendre compte que le programme suivant:
fichier: minimal.c
int main(){ return 0;}génère un exécutable de 6,2ko lorsqu'on le compile avec GCC de la façon suivante:
gcc minimal.c -o minimal
Pourtant normalement (sous linux) le code assembleur de ce programme est le suivant:
.global _start
_start: mov $1,%eax /* Mettre 1 dans eax (appel système ''Exit'') */
mov $0,%ebx /* Mettre 0 dans ebx (valeur de retour du programme) */
int$0x80 /* Interruption 0x80, (…)