Penguin
Annotated edit history of DeCompiler version 4, including all changes. View license author blame.
Rev Author # Line
4 AristotlePagaltzis 1 A [DeCompiler] tries to transform a program available in MachineCode to the ProgrammingLanguage it was originally written in.
1 StuartYeates 2
4 AristotlePagaltzis 3 When the MachineCode is that of a VirtualMachine, as is the case with [Java] class files, it is usually relatively close to the source language. [Compiler]s for such languages also usually do relatively little in the way optimisation. In such cases, decompilation is quite viable, often outright trivial.
4
5 Contrast with cases when the MachineCode is that of a real silicon [CPU], as is usually the case with [C] code. Such a target language is usually far apart from the source language, and most [Compiler]s optimise quite aggressively. Therefor, it is at least very hard, if not impossible, to infer the language constructs used in the original source code by just looking at the [Compiler] generated MachineCode.