salut jai une petite question
est ce que en peut faire des programme assembleur sous le delphi
si oui alors
est ce que vous pouver me donner un lien ou je peut telecharger des cours de ce jonre
merci pour votre aider
salut jai une petite question
est ce que en peut faire des programme assembleur sous le delphi
si oui alors
est ce que vous pouver me donner un lien ou je peut telecharger des cours de ce jonre
merci pour votre aider
Salut
Je n'y connais absolument rien en assembleur, mais effectivement tu peux écrire ton code en assembleur sous delphi.
Quant aux tutos tu peux déjà regarder ici: http://asm.developpez.com/
@+ Claudius
sjrd, ancien rédacteur/modérateur Delphi.
Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
Découvrez Mes tutoriels.
a noter que l'on ne peux pas a proprement parler creer un programme asm sous delphi.
Enfin si mais ya quen mieux pour ca
PAr contre on peut integrer certaines fonctions, code, etc ... en asm pure pour optimiser ou securiser certaines fonctionnalitées.
Apres pour l'asm ... ya pas mal d'infos sur le net .. et meme une section developpez il me semble![]()
L'asm reste souvent limité à la gestion des chaines dans la plupart des codes auxquelles j'ai pu aidé à pondre l'algo en pascal et adapté en ASM par Kr85 (Phidels.com), mais certains principe comme l'utilisation de tableau de hash si lisible en Delphi lorsque l'on fait des algos de fréquences, de cryptage ou de compression, sont extrément complexes en assembleur, car il faut gérer tous ses offsets soit-même, c'est une sacrée gymnastique ...
tient, un truc tout con, ... tu as un entier sur 4 octets, tu veux inverser les bytes, et bien en pascal tu as Swap(X) mais cela ne fonction qu'en 16bit, donc si tu le veux sur 4, il m'a fallu écrire ceci, et sur le forum, on m'a donné plus rapide et plus court que mon tableau compliqué
ou encore, pour un algo de compression raté, j'ai voulu utilisé shl, mais je perdais ma retenu, encore une fois l'ASM m'a sauvé
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 function SwapLongword(Value: Longword): Longword; {$IFDEF PUREPASCAL} type TMapLongword = array[0..3] of Byte; begin TMapLongword(Result)[0] := TMapLongword(Value)[3]; TMapLongword(Result)[1] := TMapLongword(Value)[2]; TMapLongword(Result)[2] := TMapLongword(Value)[1]; TMapLongword(Result)[3] := TMapLongword(Value)[0]; {$ELSE} asm BSWAP EAX {$ENDIF} end;
En tout cas, si tu as des questions sur l'ASM, je ne serais pas celui qui aura les réponses mais je serais l'un des premiers à m'y interesser, ... faudrait aussi que je dépasse la page 80 d'Assembleur Facile de Marabou ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 function RotateLeft(Value: Longword): Longword; asm ROL EAX, 1 end;![]()
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !![]()
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !
L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs
Partager