begin process at 2010 02 09 23:57:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Divers

 > 

Général

 > 

Quel est l'assembleur le plus rapide ?


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

Quel est l'assembleur le plus rapide ?

mardi 25 mars 2008 à 08:58:53 | Quel est l'assembleur le plus rapide ?

epineurien

Salut à tous !
Une nouvelle question , suite à quelques infos trouvées sur le net ...
J'utilise MASM32 , mais de nombreux sites dises qu'il produit un code moins rapide que d'autre (comme NASM ou TASM) , du coup je pense sérieusement changer , mais je croyais tout les assembleurs produisait le même code ? un mov eax,eax ne donnera pas le même éxécutable suivant le compilateur qu'on utilise ? les opcodes sont pourtant fixés non ?
Si il y a des différences , savez vous lequel , de NASM ou de TASM (ou un autre) , est le plus rapide ?
Merci ...


Visitez le site de ma librairie graphique :  http://hydrargyrum.ifrance.com  [ Lien ] !
mardi 25 mars 2008 à 10:42:18 | Re : Quel est l'assembleur le plus rapide ?

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
C'est du nimporte quoi, en ASM on obtient le binaire qu'on a codé et rien de plus.

ciao...
BruNews, MVP VC++
mardi 25 mars 2008 à 11:01:36 | Re : Quel est l'assembleur le plus rapide ?

epineurien

OK , c'est ce que je pensait , mais comme j'arrête pas de voir des "MASM32 c'est nul" , "c'est lent" , "c'est pas un vrai assembleur" ... je me posais la question .
Merci !


Visitez le site de ma librairie graphique :  http://hydrargyrum.ifrance.com  [ Lien ] !
mardi 25 mars 2008 à 11:14:02 | Re : Quel est l'assembleur le plus rapide ?

BruNews

Administrateur CodeS-SourceS
Faut bien préciser aussi qu'avec MASM32 on peut y mettre du pseudo code avec lequel on n'obtient surement pas ce qu'il y a de plus performant.
Il suffit de vraiment coder et là il n'y aura plus aucune différence avec un autre assembleur.

ciao...
BruNews, MVP VC++
mardi 25 mars 2008 à 16:32:42 | Re : Quel est l'assembleur le plus rapide ?

edfed

pas vrai.
certains assembleurs optimisent les instrucions, pour rendre le code plus petit, et donc plus rapide.

exemple: fasm.

me:
nop
ret
mardi 25 mars 2008 à 16:41:26 | Re : Quel est l'assembleur le plus rapide ?

BruNews

Administrateur CodeS-SourceS
exemple d'optimisation ?

ciao...
BruNews, MVP VC++
mardi 25 mars 2008 à 18:15:36 | Re : Quel est l'assembleur le plus rapide ?

epineurien

Oui ca m'intéresse beaucoup aussi edfed .
Parceque si c'est juste une optimisation style ; remplacer des Mov/Add par des Rep (et autre optimisations du même style), je le fait déjà tout seul comme un grand sous masm .
Par contre si c'est un truc que le codeur peut pas faidre lui-même , là ca m'intérèsse . (mais j'ai des doutes , l'asm c'est quand même fait pour ... pouvoir tout faire).

Visitez le site de ma librairie graphique :  http://hydrargyrum.ifrance.com  [ Lien ] .
mardi 25 mars 2008 à 18:21:53 | Re : Quel est l'assembleur le plus rapide ?

BruNews

Administrateur CodeS-SourceS
ouh la....
remplacer des Mov/Add par des Rep EST UNE DEGRADATION des perfs, pas du tout une optimisation.
Ces vieilles instructions de chaine sont à mettre aux oubliettes.

ciao...
BruNews, MVP VC++
mardi 25 mars 2008 à 19:01:52 | Re : Quel est l'assembleur le plus rapide ?

epineurien

Ahhhhh m------.
Pourtant dans la doc. d'intel ils disent que pour des grands blocs de données elles sont plus rapides ?
Ils disent bien que si c'est juste pour deux trois transfert ca ne vaut pas la peine , donc je les utilise que quand j'ai des buffer entiers à déplacer...
Cela dit la doc. est un peu vieille , donc  d'aprés toi désromais même pour des grand blocs c'est plus rapide de faire mov/ add edi,esi ?
A tout hazard , tu n'aurais pas une adresse avec les cycles d'horloge/parallélisation et co. qui  soit à jours , puisqu'apparement la mienne est obsolète (est donc pas follement utile) ...
Merci pour l'info , je vire de ce pas tout les 'Rep movsd' de mes codes .


Visitez le site de ma librairie graphique :  http://hydrargyrum.ifrance.com  [ Lien ] .
mardi 25 mars 2008 à 19:50:11 | Re : Quel est l'assembleur le plus rapide ?

BruNews

Administrateur CodeS-SourceS

Grands ou petits blocs, à virer définitivement.

mov esi, offset m_SRC
mov edx, offset m_DST
mov ecx, 500
goSRC:
mov eax, [esi]
mov [edx], eax
mov eax, [esi+4]
mov [edx+4], eax
add esi, 8
add edx, 8
sub ecx, 1
jne short goSRC

Avec les instruction simples, on peut dérouler, utiliser les registres qu'on veut (surtout ceux libres à un certain moment), etc.

Tu peux prendre cela que j'avais récupéré je ne sais plus où:
lien: www.brunews.com/P4fr.pdf
mais ne pas trop se fier aux cycles indiqués, il faut toujours mesurer son code.

ciao...
BruNews, MVP VC++


1 2 3

Cette discussion est classée dans : code, utilise, assembleur, rapide, nasm


Répondre à ce message

Sujets en rapport avec ce message

[nasm] ligne de commande [ par Kevin68 ] Bonjour :),Je suis débutant en assembleur, j'utilise nasm sous linux.J'ai cherché partout un exemple de code source qui me permettrait de récupérer le Dur dur de compiler le code des autres... [ par sirehanack ] Bonjour à toutes et à tous!Je suis tout nouveau ici et dans le monde de l'assembleur. En fait je suis aussi nouveau dans l'informatique, je n'ai pour [Assembleur inline C++] Récupérer l'offset d'un label [ par ShivX ] Bonjour a tous, J'ai un léger problème avec l'assembleur inline dans un programme en C++, n'étant pas un expert en asm j'espère que vous pourrez m'éc assembleur [ par calamsro ] j'ai commencé à étudier le langage machine l'assembleur que j'utilise est nasm mais manifestement la plupart des sources asm proposées sont faites pou lecture de date au clavier asm [ par w120 ] salut!! je suis un déééééééébutant en langage assembleur j'ai essayé de le comprendre seul mais au niveau de l'application je trouve tant de diffucul NASM et DEVCPP - fonction assembleur appellee en C/C++ [ par jean84 ] Salut a tous !Et bien comme le titre l'indique, je souhaiterai creer des fonctions en assembleur et pouvoir les appeller en C/C++ dans le meme projet. Quel assembleur choisir ? [ par trinitacs ] J'aimerai savoir quel est le meilleur assembleur qui existe ou si il en faut mixer. Je début difficielment l'asm avec NASM. Faut-il choisir MASM, TASM Newbee needs help !! ->pb de choix [ par ddevnull ] Je suis dans la phase de choix de l'assembleur que je vais utiliser et j'hésite énormément entre nasm,tasm et masm.d'un point de vue performances il p


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 0,437 sec (3)

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