English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
Toutes les catégories

par exemple j'ai telecharger un programme (exe) et je voulait savoir le code source.y a-t-il une possibilité?

2007-08-26 11:22:25 · 7 réponses · demandé par dvorak 3 dans Informatique et internet Programmation

7 réponses

il faut utiliser un désassembleur mais ça produit un programme en "assembleur", c'est à dire en langage machine

les instructions assembler dépendent du type de processeur (x86 pour les pc mais il y en a plein d'autres)
il n'y a pas de variables mais uniquement des registres et des références mémoire (directes, indirectes ou doublement indirectes)
mov r1,r2
add r1,(pc),@r12
jsb #124578
rtn
etc...

le code produit est donc très long et difficile à lire
pour ça il faut le reconstituer dans un langage de 2ieme génération (c, bliss...)
ou mieux en 3ieme génération (basic, fortran, cobol, pascal)
l'idéal pour cela, c'est de savoir en quel langage il a été écrit à la base, parce que les compilateurs utilisent des règles systématiques pour convertir en code machine
cela dit, c'est pas facile parce qu'il existe des compilateurs qui ont un optimiseur et qui font plusieurs passes pour réduire le code, en particulier remplacer des variables par des registres ou extraire certains calculs qui sont inclus dans des boucles

2007-08-26 12:59:33 · answer #1 · answered by jam63112 6 · 3 0

Non, l'étape de compilation par laquelle le code source est passée a enlevé certaines des informations d'origine.
Un exemple en langage "C" : tu définis une variable par "int nombre_de_carottes;", le compilateur va juste générer un code qui réserve un emplacement de la mémoire pour y stocker un nombre entier mais il supprimera une information de taille (que l'emplacement sert à contenir un nombre de carottes).
L'opération que tu décris s'appelle "reverse engineering" et c'est une tâche souvent complexe.

2007-08-26 21:39:04 · answer #2 · answered by Anonymous · 2 0

avec un décompilateur,de mon temps on l'appelait désassembler,mais cela ne fonctionne qu'a peu près.
et le seul moyen de débuger correctement ne peut se faire qu'en comprenant parfaitement le langage machine et cela prend énormément de temps car il n'y pas de notes ou de rem.et les instructions se comptent par un chiffre et beaucoup de zéros

2007-08-26 19:35:16 · answer #3 · answered by papy2 6 · 1 0

non impossible sauf dans le cas oû tu maitrise bien l'assemblage et déssemblage(assembleur)
si tu trouve la solution peut tu me l'onvoyer svp
s.laaouaj@yahoo.fr

2007-08-27 08:15:21 · answer #4 · answered by saidos_ish 2 · 0 0

C'est très compliquer, à moins qu'il est été fait en C# .Net: j'ai un outil au bureau (il est gratuit en plus!) qui te le décompile à 100% avec les vrais noms de variables!
Évidemment, c'est des applications ASP.NET, je n'ai pas essayé avec des applications winforms.

2007-08-26 21:57:26 · answer #5 · answered by bestter 7 · 0 0

Salut salut franchement laisse tombe l idee pour mon xp j ai compile avec un logiciel X si je te le donne avec un logiciel Y tu le decompile pas donc encore faut trouvais le meme ;enfin essaye si ta de la patiente

2007-08-26 20:45:37 · answer #6 · answered by winXPirated 2 · 0 0

Ca s'apelle le décompiler, non ?
Moi je parie que c'est plus ou moins faisable.
Avis aux pros !

2007-08-26 18:28:35 · answer #7 · answered by ace 6 · 0 0

fedest.com, questions and answers