begin process at 2012 05 25 06:32:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Processeurs

 > 

X86

 > 

correction d'un code


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

correction d'un code

dimanche 2 janvier 2011 à 15:26:28 | correction d'un code

marooh

bonjour,j'ai écrit un code assembleur qui permet de comparer deux tableaux,ce code je veux l'inserer dans un code c.
si vous pouvez bien me le corriger et j'ai une question à poser: je veux en cas d'egalité ecrire un truc que je pourrais utiliser aprés dans le code c qui affirme qu'il y a egalité pour faire qqes traitements
voici le code:
Code :
mov bx, 0;


outer_loop:
                 Mov cx,taille;

inner_loop:
                 mov ax, [Aux+bx];
                Cmp ax, [itemset+bx];
                je Element_is_Equal;


Element_is_Equal:
                                    Add bx, 2;
                                    cmp bx,taille;
                                    jne inner_loop;
lundi 3 janvier 2011 à 08:54:38 | Re : correction d'un code

ghuysmans99

Membre Club
Voilà, retour du résultat (0 si idem, 1 si différent) dans AX :
Code :
xor bx, bx
Mov cx,taille;
inner_loop:
mov ax, [Aux+bx];
Cmp ax, [itemset+bx];
Jne isdifferent
Add bx, 2;
cmp bx,taille;
jne inner_loop;
xor ax, ax
ret
isdifferent:
mov ax, 1
ret


VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
lundi 3 janvier 2011 à 15:58:06 | Re : correction d'un code

marooh

merci infiniment pour la reponse!!
lundi 3 janvier 2011 à 16:38:08 | Re : correction d'un code

marooh

svp une autre question,en mettant ce code assembleur dans mon code c en utilisant asm("instr"); j'ai aussi mis le tout dans un if (asm("");)==0 pour utiliser l'egalité
et bein ça marche pas et c'est prévisible vu que c'est illogique mais le probleme c'est que code blocks n'accepte pas la forme _asm{intsr} ou __asm{instr}
alors comment je pourrais utiliser mon resultat final??
lundi 3 janvier 2011 à 22:27:27 | Re : correction d'un code

ghuysmans99

Membre Club
Faut assembler avec NASM et linker avec l'objet produit (obj Win32)

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
mardi 4 janvier 2011 à 18:45:28 | Re : correction d'un code

patatalo

Membre Club Administrateur CodeS-SourceS
salut,


Et ne pas mélanger du code certainement 32 bits (C) avec du code 16 bits (assembleur)

@++
mardi 4 janvier 2011 à 22:12:29 | Re : correction d'un code

marooh

merci,
j'ai compiler mon code assembleur mais j'ai eu une erreur que je n'ai pas su resoudre
"too many memory reference for "cmp"" et ligne erreur est
Code C/C++ :
asm("mov ax,[Aux+si]");
asm("Cmp ax,[itemset+bx]");
mardi 4 janvier 2011 à 23:30:07 | Re : correction d'un code

ghuysmans99

Membre Club

Et ne pas mélanger du code certainement 32 bits (C) avec du code 16 bits (assembleur)



VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
mardi 4 janvier 2011 à 23:59:10 | Re : correction d'un code

marooh

re,
asm("mov eax,[Aux+esi]");
asm("Cmp eax,[itemset+ebx]");
ça marche pas aussi
mercredi 5 janvier 2011 à 00:02:04 | Re : correction d'un code

ghuysmans99

Membre Club
Ajouter un E devant le nom de registres 32 bits ne changera rien : gcc attend une syntaxe AT&T. C'est pas pour rien que j'ai dit d'

assembler avec NASM et de linker avec l'objet produit (obj Win32)



VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question

1 2 3 4 5

Cette discussion est classée dans : code, correction, mov, bx, loop


Répondre à ce message

Sujets en rapport avec ce message

rs232 [ par TRAX44 ] salut,tout premièrement je sais qu'il ya des exemples sur le site!mais mon problème est autre je tiens à comprendre pourquoi mon code ne fonctionne pa Modifer le vecteur d'interruptions [ par vecchio56 ] Bonjour J'essaie de refaire la source http://www.cppfrance.com/code.aspx?ID=33558 en assembleur (ca consiste à modifier la routine de l'interruption 0 Probleme ds mon code ki peut m aider?? [ par Gillouille ] voila l'objectif de ce programme c est de comparer deux fichiers de longueur differente et d'y trouver tt les éléments commun kelke soit leur position A l'aide... svp [ par monitor100 ] Bonjour a tous,Je suis completement null en assembler, et il faut que je fasse afficher le résultat de la factoriel de 4 soit 24.est ce que quelqu'un afficher un pixel [ par oclone ] hello, j'aimerais faire une librairie graphique en c++ mais pour cela il faut deja que je puisse afficher un point, j'ai pensé que la meilleur solutio Assembleur et langage C sous Linux [ par lapinfroid ] Bonjour a tous ,avant toute chose , je tiens a preciser que j en ai aucune notion d'assembleur Je pratique plutot le C et le JavaDans un programme C , Affichage [ par AMENO ] Cher amis aidez moi, c'est une partie de mon examen de noel. et je suis bloquerenfin il 'sagit d'un programme que l'on doit entrer jsuqu a 32 caracter Recuperer le mode Video [ par FearBlue ] Slt a tous !!!!!!!Je souhaite recupérer le mode video g lus dans une doc ca :Cette fonction retourne le numéro de code du mode vidéo en cours et tient strrev [ par vecchio56 ] Je regarde le fichier strrev.asm qui est utilisé au moins pour les debogages et je remarque que c'est une traduction d'un algorithme écrit en C qui es afficher bitmap 256 couleurs [ par mat74 ] salut,voila j'aimerai afficher un bitmap de 256 a l'ecran en mode 320*200*256 ( fonction 12h de l'interruption 10h )j'ai fais un prog qui d'abord ouvr


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 1,139 sec (3)

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