Sortir d'une boucle en language assembleur
Fermé
wael
-
17 mars 2003 à 05:56
ipl Messages postés 5723 Date d'inscription lundi 8 octobre 2001 Statut Contributeur sécurité Dernière intervention 14 avril 2012 - 17 mars 2003 à 23:40
ipl Messages postés 5723 Date d'inscription lundi 8 octobre 2001 Statut Contributeur sécurité Dernière intervention 14 avril 2012 - 17 mars 2003 à 23:40
A voir également:
- Sortir d'une boucle en language assembleur
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
- Boucle cmd - Forum Programmation
4 réponses
primal
Messages postés
489
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
1 juillet 2008
97
17 mars 2003 à 10:28
17 mars 2003 à 10:28
Salut,
for(int i=0;i<100||tab[i]==0;i++)
{
contenu de la boucle
}
Si la variable i atteint sa centième valeur ou si la valeur du tableau est de 0, alors fin de la boucle.
++
for(int i=0;i<100||tab[i]==0;i++)
{
contenu de la boucle
}
Si la variable i atteint sa centième valeur ou si la valeur du tableau est de 0, alors fin de la boucle.
++
WhiteFang
Messages postés
2063
Date d'inscription
dimanche 1 septembre 2002
Statut
Membre
Dernière intervention
15 février 2008
204
17 mars 2003 à 13:21
17 mars 2003 à 13:21
;-))
Serait tu assez gentil pour expliquer un peu mieux, ou même, de poser ton problème plus clairement ? En fait, c'est pas tout à fait clair, pour moi...
Sinon, en assembleur, les sorties se sont via JMP, JNE... Bref, via un Jump Equal, Not equal... Et ce, sur des registres où des piles...
C'est vaste...
;-)))
Wild and Free
Serait tu assez gentil pour expliquer un peu mieux, ou même, de poser ton problème plus clairement ? En fait, c'est pas tout à fait clair, pour moi...
Sinon, en assembleur, les sorties se sont via JMP, JNE... Bref, via un Jump Equal, Not equal... Et ce, sur des registres où des piles...
C'est vaste...
;-)))
Wild and Free
primal
Messages postés
489
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
1 juillet 2008
97
17 mars 2003 à 14:14
17 mars 2003 à 14:14
Excuse,
c'est ma faute, j'ai répondu de travers
;-)
c'est ma faute, j'ai répondu de travers
;-)
WhiteFang
Messages postés
2063
Date d'inscription
dimanche 1 septembre 2002
Statut
Membre
Dernière intervention
15 février 2008
204
>
primal
Messages postés
489
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
1 juillet 2008
17 mars 2003 à 15:32
17 mars 2003 à 15:32
;-))
De rien, j'ai eu un instant de doute, je me suis demandé si je devais carrément pas prendre ma retraite ;-)) Pi après je me suis dit "meuu non" !! ;-))
Wild and Free
De rien, j'ai eu un instant de doute, je me suis demandé si je devais carrément pas prendre ma retraite ;-)) Pi après je me suis dit "meuu non" !! ;-))
Wild and Free
Salut, Wael
Voici un petit bout de code:
Je suppose qu'il s'agit d'un tableau TAB.
TAB est l'offset du debut du tableau dans le DATA SEGMENT.
Si tu utilises l'addressage indirect, l'indice en cours se trouve dans BX.
Je suppose que tu as écrit des instructions qui lisent une valeur dans AX. Ce sera la valeur du tableau pour l'indice en cours.
Voici comment implementer la boucle de lecture:
MOV BX, 0
Boucle
...Lecture...
// AX contient la valeur a stocker.
OR AX, AX
JZ Fin // Si AX=0, c'est la fin
MOV TAB[BX], AX // Sinon, stocker...
INC BX // ...puis incrementer l'indice...
CMP BX, 100 // Si BX ne depasse pas 00...
JNZ Boucle // ...on reprend la lecture.
Fin
Voici un petit bout de code:
Je suppose qu'il s'agit d'un tableau TAB.
TAB est l'offset du debut du tableau dans le DATA SEGMENT.
Si tu utilises l'addressage indirect, l'indice en cours se trouve dans BX.
Je suppose que tu as écrit des instructions qui lisent une valeur dans AX. Ce sera la valeur du tableau pour l'indice en cours.
Voici comment implementer la boucle de lecture:
MOV BX, 0
Boucle
...Lecture...
// AX contient la valeur a stocker.
OR AX, AX
JZ Fin // Si AX=0, c'est la fin
MOV TAB[BX], AX // Sinon, stocker...
INC BX // ...puis incrementer l'indice...
CMP BX, 100 // Si BX ne depasse pas 00...
JNZ Boucle // ...on reprend la lecture.
Fin
ipl
Messages postés
5723
Date d'inscription
lundi 8 octobre 2001
Statut
Contributeur sécurité
Dernière intervention
14 avril 2012
585
17 mars 2003 à 23:40
17 mars 2003 à 23:40
Bonsoir à tous,
Cà existe encore la programmation en assembleur ???
Vous me faites plaisir et verser des larmes là !
L'assembleur, c'est le language de ma jeunesse... j'avais programmé un interpréteur super sophistiqué !
Environ 25 ans que je n'ai pas écrit une ligne d'assembleur !
Merci !!! ;-)
@12C4
Ipl
Cà existe encore la programmation en assembleur ???
Vous me faites plaisir et verser des larmes là !
L'assembleur, c'est le language de ma jeunesse... j'avais programmé un interpréteur super sophistiqué !
Environ 25 ans que je n'ai pas écrit une ligne d'assembleur !
Merci !!! ;-)
@12C4
Ipl
17 mars 2003 à 13:17
Une boucle For, en assembleur ?
Wild and Free