désassembleur ? - Divers - Programmation
Marsh Posté le 13-05-2006 à 18:46:23
tu connais l'assembleur ? parce que c'est tout ce que tu obtiendras en désassemblant un exécutable
Marsh Posté le 13-05-2006 à 19:01:16
Harkonnen a écrit : tu connais l'assembleur ? parce que c'est tout ce que tu obtiendras en désassemblant un exécutable |
expliqué moi
merci
Marsh Posté le 13-05-2006 à 19:10:44
OK OK
j'ai chairché sur google et j'ai comprie.
je réexplique :
je veux un décompilateur et pas desassembleur
décompilateur
Marsh Posté le 13-05-2006 à 19:54:19
un décompilateur ne te servira que pour certains langages semi interprétés (Java, .NET, ... à condition que le code ne soit pas obfusqué), par pour un langage compilé comme le C/C++ ou autres. si tu veux décompiler un exécutable, tu dois d'abord savoir dans quel langage il a été codé. si c'est du Java ou du .NET, alors tu pourras normalement le décompiler et reconstituer tant bien que mal le source. si c'est du C/C++/Pascal ou autres, tu n'obtiendras que de l'assembleur
Marsh Posté le 16-05-2006 à 17:51:12
Harkonnen a écrit : un décompilateur ne te servira que pour certains langages semi interprétés (Java, .NET, ... à condition que le code ne soit pas obfusqué), par pour un langage compilé comme le C/C++ ou autres. si tu veux décompiler un exécutable, tu dois d'abord savoir dans quel langage il a été codé. si c'est du Java ou du .NET, alors tu pourras normalement le décompiler et reconstituer tant bien que mal le source. si c'est du C/C++/Pascal ou autres, tu n'obtiendras que de l'assembleur |
et je peux faire quoi avec l'assemleur ?
Marsh Posté le 16-05-2006 à 17:59:15
ce que tu pourrais faire avec le source en C, mais en beaucoup plus compliqué
Marsh Posté le 16-05-2006 à 18:00:13
Désassembler est illégal*
* sauf si tu est l'auteur ou que la licence du prog l'autorise ce qui n'est que très rarement le cas!
Marsh Posté le 16-05-2006 à 18:01:59
the big ben a écrit : Désassembler est illégal* |
bah, tu peux désassembler, à partir du moment où tu ne modifies pas l'exécutable
Marsh Posté le 16-05-2006 à 18:08:35
Harkonnen a écrit : bah, tu peux désassembler, à partir du moment où tu ne modifies pas l'exécutable |
Bien sur (c'est illegal) ,
je ve simpleument aprendre comment on a construis certain logicielle , sans faire de modification bien sur !
Citation : ce que tu pourrais faire avec le source en C, mais en beaucoup plus compliqué |
en faitte : pourquois en beaucoup plus compliqué ?
Marsh Posté le 16-05-2006 à 18:15:35
big_dadi_fat a écrit : |
parce que le langage assembleur, c'est le langage le plus bas niveau qui soit ! en assembleur, tu dois tout faire toi même ! quand tu codes un "Hello world" en assembleur, tu dois non seulement coder l'affichage du texte, mais aussi la routine qui ira dessiner le texte à l'écran, la routine qui ouvrira la fenêtre, etc... il te faut connaitre l'organisation de la mémoire, les modes d'adressage, la différence low/big endian, les ABI si tu veux interfacer de l'assembleur avec du C/C++, les registres, les mnémoniques du processeur, ainsi que celles des éventuelles extensions (FPU, MMX, SSE, etc..)
en assembleur, pas de boucles for(), pas de while(), pas de switch(), pas de if(), pas de mots clés du tout ! tu veux faire un test conditionnel ? tu colles un compteur dans un registre (en faisant gaffe à sa taille), et tu le décrémentes à chaque passage... ça te suffit, ou tu en veux encore ?
Marsh Posté le 16-05-2006 à 18:33:27
Harkonnen a écrit : parce que le langage assembleur, c'est le langage le plus bas niveau qui soit ! en assembleur, tu dois tout faire toi même ! quand tu codes un "Hello world" en assembleur, tu dois non seulement coder l'affichage du texte, mais aussi la routine qui ira dessiner le texte à l'écran, la routine qui ouvrira la fenêtre, etc... il te faut connaitre l'organisation de la mémoire, les modes d'adressage, la différence low/big endian, les ABI si tu veux interfacer de l'assembleur avec du C/C++, les registres, les mnémoniques du processeur, ainsi que celles des éventuelles extensions (FPU, MMX, SSE, etc..) |
wowowow
ok ok , j'avou que c'est vraiment saoulon
mais je veux bien aprendre tout ca , ( un peut plus tard /*en vecance*/ )
un petit cours pour débuter sera la bien venu
merci
Marsh Posté le 16-05-2006 à 19:08:24
Essaies d'apprendre le BrainFuck, c'est une sorte d'assembleur de très haut niveau (puisqu'interprété)
Marsh Posté le 16-05-2006 à 21:11:22
ou le francais...
(spa méchant hein !)
par contre t'as l'air motive pour apprendre l'assembleur
tu vas en avoir besoin (avis perso hein )
edit : c'est quoi comme type de logiciel dont tu voudrais savoir comment ils ont ete fait?
Marsh Posté le 20-05-2006 à 13:44:33
gocho a écrit : |
ya pas un type precis ! je ve savoire en general comment en sont fais quelque logiciel en C .
Marsh Posté le 20-05-2006 à 13:49:04
ben tu vas sur sourceforge, et tu télécharges les sources de n'importe quel projet ! t'apprendras certainement plus qu'en désassemblant un programme
Marsh Posté le 20-05-2006 à 14:01:27
Harkonnen a écrit : ben tu vas sur sourceforge, et tu télécharges les sources de n'importe quel projet ! t'apprendras certainement plus qu'en désassemblant un programme |
ya t'il pas une version de sourceforge en FRANCAIS ?? svp
Marsh Posté le 20-05-2006 à 14:13:14
...
rassures moi la...t'as pas l'intention de te lancer dans la prog C (pas que le C d'ailleurs, la prog quelle qu'elle soit) sans connaitre un minimum d'anglais quand meme?
Marsh Posté le 20-05-2006 à 14:25:48
gocho a écrit : ... |
j'ai 12 ans et vous pourier etre ettoner car je me suis déja lancer en programmation en C (ya 10 mois) ,
et je ne connais pas bien l'anglais . (dailleur méme le FR -> vous avez dû remarquer les fautes)
Marsh Posté le 20-05-2006 à 14:32:19
big_dadi_fat a écrit : j'ai 12 ans et vous pourier etre ettoner car je me suis déja lancer en programmation en C (ya 10 mois) , |
oui d'ou mon
gocho a écrit : ou le francais... |
Et sinon, si tu veux vraiment apprendre le C (ou tout autre langage d'ailleurs, ca n'importe pas) je ne pense pas que decompiler des progs soit une bonne methode.
Rien ne vaut un bon apprentissage classique : tuto sur le net, et bouquins
explanation :
imagine que le prog que tu decompile ait ete code avec les pieds.
deja tu va galerer pour le comprendre et tu risque de te baser dessus pour tes dev futurs.
bref, tu risque d'apprendre a coder toi aussi avec les pieds.
autre cas :
imagine que le prog ait ete code par un expert, qui maitrise bon nombre de notions du langage dont tu n'as meme pas conscience.
Ben tu vas galere aussi pour le comprendre.Et tu vas t'attaquer a des notions de haut niveau alors que tu ne connaitras meme pas les bases...
Stune tres mauvaise idee ca...
Enfin ca n'est que mon humble avis, et il n'implique que moi
(bien que je pense que beaucoup me rejoindrait sur ce point de vu )
edit : et tu dis que tu t'es lance dans le C y'a 10 mois.OK!
T'as surement deja fait des prog? ils marchent tous niquels?ils sont tous mega propres?
j'veux un exemple
edit-ps : et sur ce je vais manger...y'en a qui taffent apres
Marsh Posté le 20-05-2006 à 14:39:28
gocho a écrit : oui d'ou mon |
mais je n'ai pas dis que je veux aprendre le C en décompilant des .exe , non.
bien sur qu'il faut aprendre le C avec des cours , je suis entierement dacore !
mais ca n'enpaiche commeme pas de decompiler quelque pog unteresant , juste pour voir !
Marsh Posté le 20-05-2006 à 14:44:38
Avant de décompiler quoique ce soit, apprend l'assembleur. Sinon, tu ne pourras absolument pas comprendre les centaines de milliers de lignes qui te tomberont sous les yeux. Et pour vraiment bien l'apprendre, programme avec, après desassemble éventuellement tes propres softs
Un conseil, sois raisonnable et écoute gocho
Si tu veux apprendre à bien programmer en lisant le code des autres, ne te met pas à dessassembler et prends le code d'un logiciel open-source... A moins que tu n'ais une autre idée derrière la tête...
Marsh Posté le 20-05-2006 à 15:11:24
IrmatDen a écrit : |
par exemple ?
Citation : A moins que tu n'ais une autre idée derrière la tête... |
qelle idée
Marsh Posté le 20-05-2006 à 16:11:31
Prend le code source du noyau linux http://www.kernel.org
Tu as des bouts en C, des bouts en assembleur Tu apprendras super vite et bientot tu seras meilleur que Linus (c'est un noob entre nous)
Marsh Posté le 21-05-2006 à 17:28:28
big_dadi_fat a écrit : par exemple ? |
Comme l'as dit Harko:
Harkonnen a écrit : ben tu vas sur sourceforge, et tu télécharges les sources de n'importe quel projet ! t'apprendras certainement plus qu'en désassemblant un programme |
Après à toi de voir ce que t'a envie d'apprendre...
Marsh Posté le 13-05-2006 à 18:44:53
salut
j'ai des programmes (petit logiciel) executable , que je voudrai connaitre le code source ,
alors il me faut un désassembleur (un lien , svp).
merci