The Decompiler reference article from the English Wikipedia on 24-Apr-2004
(provided by Fixed Reference: snapshots of Wikipedia from wikipedia.org)

Decompiler

Helping orphans the way you would do it
A decompiler is a computer program that translates machine language or sometimes object code (the output from a compiler) into a high level language (source code). By comparison, a disassembler translates machine language into assembly language.

Decompilation is a technique for the recovery of lost source code. It is also useful in some cases for computer security, interoperability, error correction, and more (see WhyDecompilation). Decompilation of Java bytecode programs is relatively easy, and there are many successful Java decompilers. Decompilation of binary programs is much harder; as a result there are very few binary decompilers, and they tend to fail (so far) on all but the smallest programs.

A decompiler should not in general be used for "cracking" other programs, where this would contravene the copyright of the program. Cracking of programs is not only illegal but it rides on other's creative effort. Further discussion of legal and ethical issues can be found in the article on reverse engineering.

See also

External links