Problème en assembleur.
Fermé
zeustein
Messages postés
9
Date d'inscription
mardi 12 février 2008
Statut
Membre
Dernière intervention
10 avril 2008
-
7 avril 2008 à 23:49
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 - 10 avril 2008 à 19:30
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 - 10 avril 2008 à 19:30
A voir également:
- Problème en assembleur.
- Nasm assembleur - Télécharger - Édition & Programmation
- Formation monteur assembleur pc ✓ - Forum Études / Formation High-Tech
- Tp corrigé assembleur 8086 - Forum Programmation
- Problème assembleur - Forum Assembleur
- Programmation assembleur exercices corrigés pdf - Forum Programmation
3 réponses
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
8 avril 2008 à 02:56
8 avril 2008 à 02:56
Salut,
Tu as déjà une piste, ya un truc spécifique que tu arrives pas à faire?
Tu as déjà une piste, ya un truc spécifique que tu arrives pas à faire?
zeustein
Messages postés
9
Date d'inscription
mardi 12 février 2008
Statut
Membre
Dernière intervention
10 avril 2008
10 avril 2008 à 18:09
10 avril 2008 à 18:09
ok merci je vais essayé. je craint que ca marche pas parceque j'utilise l'emul 8086. qu'à celà ne tienne peut tu quand meme m'envoyer le ode source?? pour resoudre ce dernier problème. je suis à J-1.
merci et à tres bientot.
merci et à tres bientot.
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
10 avril 2008 à 18:57
10 avril 2008 à 18:57
Bon j'ai vaguement transformé ton code pour marche avec nasm.
J'ai programmé la fonction print_num, j'ai parfois utilisé les registres en 32 bits au lieu de 16, sinon ça posait des problèmes d'adressages. Mais le fond n'a pas beaucoup changé:
J'ai programmé la fonction print_num, j'ai parfois utilisé les registres en 32 bits au lieu de 16, sinon ça posait des problèmes d'adressages. Mais le fond n'a pas beaucoup changé:
extern printf section .data vecteur db 5,4,5,2,1 f db '%02x',0xa,0x0 section .bss j resd 1 i resd 1 m resd 1 section .text global main main: mov ax,0 mov ebx,0 mov dx,0 mov [i], dword 0 rep1: cmp bx,4 je near conclusion mov dl,[vecteur + ebx] mov [j],bx rep2: cmp bx,5 je fpour cmp [vecteur + ebx],dl jl faire jmp finsi faire: mov dl,[vecteur + ebx] mov [i],bx finsi: inc bx jmp rep2 fpour: mov bx,[j] cmp [i], byte 0 jne do inc bx jmp rep1 do: mov [j],bx mov bx,[i] mov cl,[vecteur + ebx] mov bx,[j] mov cl,[vecteur + ebx] mov bx,[i] mov [vecteur + ebx],cl mov bx,[j] mov [vecteur + ebx],dl inc bx jmp rep1 conclusion: mov bx,0 rem: cmp bx,5 je fin mov al,[vecteur + ebx] call print_num inc bx jmp rem fin: ret print_num: pushad movzx eax, al push eax push f call printf add esp, 8 popad ret
zeustein
Messages postés
9
Date d'inscription
mardi 12 février 2008
Statut
Membre
Dernière intervention
10 avril 2008
>
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
10 avril 2008 à 19:20
10 avril 2008 à 19:20
merci etant donné que je suis pas à la mailson presentement, je testerai ca des que je serai rentrer et je vais me debrouiller à adapter avec emu8086.
meri pour tout. bonne soirée.
j'ai deposé d'autres requetes afin de savoir comment creer une interface graphique en c++.
stp peut tu m'aider à ce sujet??
meri pour tout. bonne soirée.
j'ai deposé d'autres requetes afin de savoir comment creer une interface graphique en c++.
stp peut tu m'aider à ce sujet??
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
>
zeustein
Messages postés
9
Date d'inscription
mardi 12 février 2008
Statut
Membre
Dernière intervention
10 avril 2008
10 avril 2008 à 19:30
10 avril 2008 à 19:30
Je vais regarder :-)
Et oublie pas mon message d'en dessous qui explique ce qu'il faut faire pour ton deuxième exercice :-)
Et oublie pas mon message d'en dessous qui explique ce qu'il faut faire pour ton deuxième exercice :-)
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
10 avril 2008 à 19:09
10 avril 2008 à 19:09
Et si tu cherches comment trouver un caractère dans un tableau, tu peux regarder ça (bon c'est prévu pour nasm mais bon...):
http://www.commentcamarche.net/faq/sujet 10330 exercice assembleur x86 occurence d un caractere
http://www.commentcamarche.net/faq/sujet 10330 exercice assembleur x86 occurence d un caractere
8 avril 2008 à 14:10
en fait il est question de s'inspirer de ce programme ( surtout des accès aux éléments du vecteur ) pour ECRIRE UN PROGRAMME QUI TRIE PLUTOT LE VECTEUR DANS L'ORDRE CROISSANT.
et d'ECRIRE UN AUTRE PROGRAMME QUI LIT UNE VALEUR ET VERIFIE S'IL EST DANS LE TABLEAU ' VECTEUR '.
s'il te plait j'aimerai ke tu me donne les codes sources pour pouvoir resoudre ce problème.c'est un projet que je dois remettre vendredi matin.merci de ton soutien
8 avril 2008 à 20:22
9 avril 2008 à 20:07
j'aimerai donc stp que tu essais de corriger le code source que je t'enverrai en m'envoyant les codes sources du problème tel que tu le concois.
merci et à tout à l'heure.
meri bcp d'avance.
9 avril 2008 à 20:15
Et si tu mets ton code, mets le sur cette discussion et pas par message privée ;-)
A bientôt!
9 avril 2008 à 21:20
include emu8086.inc
name "trivec"
vecteur db 5,4,5,2,1
i dw 0
j dw ?
m db ?
mov ax,0
mov bx,0
mov dx,0
rep1:
cmp bx,4
je conclusion
mov dl,vecteur[bx]
mov j,bx
rep2:
cmp bx,5
je fpour
cmp vecteur[bx],dl
jl faire
jmp finsi
faire:
mov dl,vecteur[bx]
mov i,bx
finsi:
inc bx
jmp rep2
fpour:
mov bx,j
cmp i,0
jne do
inc bx
jmp rep1
do:
mov j,bx
mov bx,i
mov cl,vecteur[bx]
mov bx,j
mov cl,vecteur[bx]
mov bx,i
mov vecteur[bx],cl
mov bx,j
mov vecteur[bx],dl
inc bx
jmp rep1
conclusion:
mov bx,0
print 'le resutat est:'
rem:
cmp bx,5
je fin
mov al,vecteur[bx]
call print_num
inc bx
jmp rem
fin:
define_scan_num
define_print_num
define_print_num_uns
define_print_string
define_pthis
end
et la deuxième ^préoccupation consiste à ECRIRE UN AUTRE PROGRAMME QUI LIT UNE VALEUR ET VERIFIE S'IL EST DANS LE TABLEAU ' VECTEUR '
Merci bcp pour toute l'assistance que tu m'apporte. bonne soirée!