begin process at 2012 02 08 06:45:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Divers

 > 

Débutant(e)

 > 

Cherchez l'erreur


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Cherchez l'erreur

mardi 13 novembre 2007 à 13:39:50 | Cherchez l'erreur

neo1012

Salut, J'ai commencé l'ASM il n'y a pas longtemps, et hier j'ai fait mom premier programme: jmp string code: pop ecx mov bl,1 mov dl,23 ;mov al,4 int 0x80 dec bl mov al,1 int 0x80 string: jmp code db 'bonjour tout le monde!',0 Et quand je l'assemble avec NASM, le prgm se lance et ca me met : Processuer a rencontre un instruction non autorisé CS:0000 IP:0077 OP:f0 37 050 13 02 Qu'est ce que ca veut dire et ou est l'eereur ?javascript:Insert_Emoticon('/imgs2/smile_big.gif');
mardi 13 novembre 2007 à 14:54:44 | Re : Cherchez l'erreur

_dune2_

Membre Club
Salut,

un code formaté devrait être un peu plus lisible non ?
du style :

    jmp string
code:
    pop ecx
    mov bl,1
    mov dl,23 ;
    mov al,4
    int 0x80
    dec bl
    mov al,1
    int 0x80
string:
    jmp code
    db 'bonjour tout le monde!',0

Erreur : CS:0000 IP:0077 OP:f0 37 050 13 02 -> instruction non autorisé
En effet :
   0:   f0 37                   lock aaa
   2:   50                      push eax
   3:   13 02                   adc  eax,[edx]

-> "lock aaa" n'est pas une instruction correcte ... mais il n'apparait pas dans ton code !!
Je pense donc que ton erreur ne vient pas de ce bout de code à proprement parler, mais de ce qu'il doit impacter (je parle entre autre du "pop ecx" et du fait que ton code boucle sans cesse "jmp code" et donc doit corrompre la pile).

Gentoo... que du bonheur ...
mardi 13 novembre 2007 à 14:59:36 | Re : Cherchez l'erreur

neo1012

(pour le formatage du code je savais pas que ca allait le mettre comme ca) alors je fais quoi moi ?
mardi 13 novembre 2007 à 15:22:01 | Re : Cherchez l'erreur

_dune2_

Membre Club
ben heuu comment dire .. c'est ton code complet là ?
Si c'est le cas, il n'y a aucune référence à ta string ??
Et pourquoi tu fais un jump à "string" pour refaire un jump là où tu étais ?
Pourquoi tu utilises des registres 8 bits comme arguments à int 0x80, il serait plus judicieux d'utiliser des registres 32bits pour initialiser à 0 les poids forts de ces registres ?
Pourquoi ce "pop ecx" ?

Et si tu nous disais ce qu'est censé faire ton code ?

Ou alors j'essai de deviner ton code et je dirais que ton erreur est tout simplement le "jmp code" qui devrais être plutot "call code" de manière à pousser l'adresse de ta string dans la pile et ainsi la récupérer dans le registre ecx avec un "pop" ... ça me parait être la réponse la plus censé à ton problème .... (tout en initialisant tes registres en 32 bits) du style :

    jmp string
code:
    pop ecx
    mov ebx,1
    mov edx,23 ;
    mov eax,4
    int 0x80
    dec ebx
    mov eax,1
    int 0x80
string:
    call code
    db 'bonjour tout le monde!',0

J'ai tout suivi ? sinon soit plus claire dans ta requête en exprimant ton besoin de manière lisible et sans devinette ;)


Gentoo... que du bonheur ...
mardi 13 novembre 2007 à 15:34:08 | Re : Cherchez l'erreur

neo1012

En fait j'ai recopié ca dans "coding school", un mag de programmation. ils font apparement plein de fautes mais bon... Ce truc est censé afficher "bonjour tout le monde" [Ou alors j'essai de deviner ton code et je dirais que ton erreur est tout simplement le "jmp code" qui devrais être plutot "call code" de manière à pousser l'adresse de ta string dans la pile et ainsi la récupérer dans le registre ecx avec un "pop" ... ça me parait être la réponse la plus censé à ton problème ....] >> C'est ca


Cette discussion est classée dans : code, string, erreur, mov, jmp


Répondre à ce message

Sujets en rapport avec ce message

AT&T erreur de compilation etc... [ par maminovadu75 ] Bonjour, j'aimerais me mettre a l'assembleur mais j'ai quelque problème.voici mon code morceau de code pour trier un tableau de int : ( mélange de C/C pb int 21h ah=0ah [ par mat74 ] salut a ts ,voila j'ai fais un programme qui est censé lire une chaine entré par l'utilisateur et ensuite la reafficher . Il me demande bien d'entré u nasm [ par henri12 ] salut je viens de compiler ce mbr boot avec nasmnasm -fbin aboot.asm -o binexe.exele programme c est bien compiler mais en lançant d une cle usb l ima mon code ne marche pas [ par mohoguess ] Bonjour a tous,je suis débutant en asembleur, et j'ai écrit un code qui sert a additionner le chiffre 1 jusqu'à 999999 fois (mon code ne sert à rien j Mode protégé: impossible de faire un far jump ou de lancer un traitement d'interruption (erreur de pile engendrant une triple fault) [ par rdany62 ] Bonjour,Pour mon projet tuteuré de DUT, j'ai besoin de démarrer un PC (n'importe quel processeur à partir du Pentium) sur un programme directement (c' Boot et heure [ par henri12 ] je fais un essai de changement de l heure avec l interruption 21h sous le boot l heure n est pas changerpourquoi.286C   ;Code de bootsecteur permettan programme assembleur [ par marwen09 ] je veux ecrire un programme assembleur qui recuper la date de system puis affecte dans jour le nombre de jour ,dans anne le nobre d'anne et dans moi s correction d'un code assembleur [ par marooh ] Bonjour, j'ai ce code assembleur qui permet la creation d'un tableau de 10 cases et les remplir avec le chiffre 5.en l'utlisant avec tasm,il s'avère aide pour code [ par marooh ] Bonjour, j'ai un code assembleur qui permet de trouver le maximum d'un tableau.En le compilant, la premiere phase passe avec succès mais en créant l je bloque!!!! [ par marooh ] bonjour, j'ai ecrit un code assembleur qui compte le nombre des séparateurs dans une chaine saisie,en assemblant tout va bien mais l'execution ne donn


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,992 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales