Path: utzoo!utgpu!watserv1!watmath!att!ima!esegue!compilers-sender From: rwallace@vax1.tcd.ie Newsgroups: comp.compilers Subject: Re: Help on disassembler/decompilers Keywords: assembler, debug Message-ID: <6839.26ea3b0e@vax1.tcd.ie> Date: 9 Sep 90 12:52:29 GMT References: Sender: compilers-sender@esegue.segue.boston.ma.us Reply-To: rwallace@vax1.tcd.ie Organization: Computer Laboratory, Trinity College Dublin Lines: 22 Approved: compilers@esegue.segue.boston.ma.us In article , wwho@ucdavis.edu (W. Wilson Ho) writes: > I am looking for any information related to disassembling > object code into assembly langauge or even higher-level language such > as C. Would someone please give me pointers to program sources, > documentation or papers related to this? > [Turning object code back into assembler is pretty straightforward, and > every debugger does it. Someone else asked about disassembling into higher > level languages a little while ago, but I didn't see any responses. -John] There's no unique mapping from machine code to HLL and hence (unlike machine code to assembler) no simple algorithm (your algorithm might recognize something it thinks is a loop but is it a for loop, a while loop or just something hacked together with gotos? that's before you even think about what optimized machine code will look like). You could probably figure out a complicated algorithm but to what purpose, since with no symbol table the HLL code will not be significantly more readible than the assembler code anyway. -- Russell Wallace, Trinity College, Dublin rwallace@vax1.tcd.ie -- Send compilers articles to compilers@esegue.segue.boston.ma.us {ima | spdcc | world}!esegue. Meta-mail to compilers-request@esegue.