Qu'est-ce qu'un Decompiler?

Un decompiler est un programme qui prend du code exécutable et produit du code source de celui-ci.

Un compilateur crée le code exécutable à partir du code source; A décompilateur tentatives d'inverser ce processus.

Un decompiler est une version spécialisée d'un désassembleur. Si un désassembleur de convertir du code exécutable de langage d'assemblage, d'un décompilateur tentatives d'aller plus loin et de convertir le code exécutable de code source dans un niveau de langue, tels que C ou C + +.

Decompilers

Boomerang

L'objectif du projet est le Boomerang est une tentative de développer une véritable décompilateur pour les programmes en code machine par le biais de la communauté open source. Un decompiler prend en entrée un fichier exécutable, et les tentatives de créer un niveau élevé, compilable, peut-être même à maintenir le fichier source qui fait la même chose. Il est donc le contraire d'un compilateur, qui prend un fichier source et fait un exécutable. Toutefois, un grand decompiler ne tente pas d'inverser de toute action de l'decompiler, mais il transforme le programme de saisie à maintes reprises jusqu'à ce que le résultat est de haut niveau du code source. Par conséquent, il n'est pas de recréer le fichier source d'origine, probablement rien de tel. Il n'a pas d'importance si le fichier exécutable a symboles ou pas, ou a été compilée à partir d'une langue. (Cependant, des langues comme le ML déclaratif ne sont pas considérées.)

L'intention est de créer un reciblable decompiler (c'est-à-dire celui qui peut décompiler les différents types de fichiers de code machine, avec un modeste effort, par exemple, X86-fenêtres, sparc-solaris, etc.) Il a également été conçu pour être très modulaire, de sorte que les différentes parties de la decompiler peuvent être remplacées par des modules d'expérimentation. Il était destiné à devenir interactif, à la IDA Pro, parce que certaines choses (pas seulement les noms des variables et des observations, mais celles-ci sont évidemment très important) nécessitent l'intervention d'experts. Qu'il s'agisse de l'interactivité appartient à la decompiler ou dans un autre outil reste peu claire.

En transformant la sémantique des instructions, et grâce à de puissantes techniques comme le Static Single Assignment analyse de flux de données, Boomerang devrait être (largement) indépendant du comportement exact du compilateur ce qui est arrivé à être utilisé. Optimisation ne devrait pas affecter les résultats. Par conséquent, l'objectif est un décompilateur.



Top 5 Free Networking Tools

Bookmark Qu'est-ce qu'un Decompiler?

Latest Blog Posts


Anglais Anglais Allemand Allemand Espagnol Espagnol Français Français Italien Italien Portugais Portugais Russe Russe Néerlandais Néerlandais
Grec Grec Hindi Hindi Japonais Japonais Coréen Coréen Chinois Chinois Chinois (simplifié) Chinois (simplifié) Arabe Arabe

Copyright 2009 Tech-FAQ. Tous droits réservés. Politique de confidentialité.