Fonction d'affichage de chaine - asm - bug a l'execution

Contenu du snippet

Cette fonction affiche une chaine à l'ecran sans appel à une librairie mais plante (overflow) à la ligne "asm("int 0x10");"
Si quelqu'un peut m'aider à corriger ce bug je lui en serais reconnaissant

Source / Exemple :


int a;
char*string;

void affiche(char*string)
{
  for(a=0; string[a]; a++)
  {
    asm("movl $string, %eax");
    asm("movl a, %ebx");
    asm("movb 0x0(%eax,%ebx,1), %al");
    asm("movb $0x0e, %ah");
    asm("int 0x10"); //Plantage
  }
}

int main()
{
  affiche("String");
  return 0;
}

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.