ASSEMBLEUR : Suite d'instruction ..?

Fermé
chiti_ Messages postés 1044 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 23 novembre 2014 - 6 janv. 2012 à 16:35
chiti_ Messages postés 1044 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 23 novembre 2014 - 6 janv. 2012 à 19:35
Bonjour,
j'ai ce programme

mov cx,256

mov ax,00ff h

mov ds,ax

xor bx,bx

saut: mov[bx],al

dec cx

inc bx

jnz saut


pouvez vous m'expliquer ce qu'il fait au just ????
car je suis confus entre
-Le JNZ teste si CX =0
-Le JNZ qui compare entre BX et CX



3 réponses

nicocorico Messages postés 799 Date d'inscription dimanche 19 juin 2011 Statut Membre Dernière intervention 3 juillet 2018 138
Modifié par nicocorico le 6/01/2012 à 19:09
L'instruction Jnz teste ici maladroitement si bx est à zéro,
et en fait c'est une erreur, il faut inverser 'dec cx' et 'inc bx'.
ainsi, la boucle prendra fin lorsque cx sera à 0...

Le chêne aussi était un gland, avant d'être un chêne
1
chiti_ Messages postés 1044 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 23 novembre 2014 129
6 janv. 2012 à 19:35
Merci beaucoup; ça me rassure, car ça m'as mit complètement à coté de la plaque, alors que c'étais pas moi qui ai fait l'erreur XD
0
[Dal] Messages postés 6062 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 24 mars 2023 1 044
6 janv. 2012 à 19:28
Je suis un peu rouillé en assembleur, mais il me semble que :

JNZ teste si le ZF==0. Le Zéro Flag est mis à 1 si le résultat d'une opération affectant le Zéro Flag est zéro, autrement, il est vidé.

Dans ton programme seuls les opcodes XOR, DEC et INC affectent le Zéro Flag, INC étant le dernier avant le test, c'est donc lui qui fixe la valeur du Zéro Flag testé.

Le programme boucle sur "saut" tant que INC BX ne produit pas un résultat égal à zéro.

Tu peux sans doutes le vérifier avec un débogueur.

Et voilà quelques liens utiles :

https://pdos.csail.mit.edu/6.828/2004/readings/i386/INC.htm
https://pdos.csail.mit.edu/6.828/2004/readings/i386/appc.htm


Dal
1
chiti_ Messages postés 1044 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 23 novembre 2014 129
6 janv. 2012 à 19:34
Merci pour ces précieuses infos :)
0
chiti_ Messages postés 1044 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 23 novembre 2014 129
6 janv. 2012 à 18:38
ahhh ! répondez !!!! s'il vous plait !!!!!!
0