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

Soyez le premier à donner votre avis sur cette source.

Snippet vu 3 323 fois - Téléchargée 36 fois

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

Ajouter un commentaire

Commentaires

cs_GoldenEye
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
2 -
Ici on donne des sources et les questions, on les pose dans le forum. Ce n'est pas la première fois qu'on le dit nom d'un chien
cs_GoldenEye
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
2 -
Quant à la réponse à la question, tu ne l'auras pas de sitôt dans la mesure où tu n'as même pas pris la peine de rechercher dans le forum
madprog
Messages postés
16
Date d'inscription
mardi 1 octobre 2002
Statut
Membre
Dernière intervention
7 août 2005
-
Desole mais je suis tout nouveau d'aujourd'hui...
++ sur le forum
cs_GoldenEye
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
2 -
Faute avouée à demi pardonnée... @+
Croqmort
Messages postés
95
Date d'inscription
mercredi 5 décembre 2001
Statut
Membre
Dernière intervention
27 juin 2006
-
il se peut que la chaine doivent se finir par $
je sais que une des fonctions d'affichage du bios edmande que les chaines se finnisent par $, c peut etre celle là.

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.