comp.lang.ada
 help / color / mirror / Atom feed
From: wilson <winslole@udayton.edu>
Subject: Re: Reverse engineering Ada's compiled code
Date: Fri, 15 Mar 2013 21:28:36 -0400
Date: 2013-03-15T21:28:36-04:00	[thread overview]
Message-ID: <op.wt0mdy0j1hq4pq@leon-hp> (raw)
In-Reply-To: khvfr2$hf4$1@speranza.aioe.org

On Fri, 15 Mar 2013 11:47:46 -0400, <tmoran@acm.org> wrote:

>> I have quite an unusual question to ask:  how difficult would it be to
>> reverse engineer Ada's compiled code?  I am sure this question must have
>   J.S. Donnelly, "A Decompiler for the Countess Computer," Navy
> Electronics Laboratory Technical Memorandum 427, Sept. 1960
>   It decompiled to Neliac, an Algol 58 derived language, and was intended
> to take lots of the machine coded programs of the time and turn them into
> Neliac, which could then be understood, modified, and compiled to other
> targets.  Decompilation is a pattern recognition problem and its
> difficulty depends on how complex and varied are the patterns to be
> recognized.  If you just have a modest amount of machine code, manual
> decompilation would be easier.
>   Assisting on that project as a work-study student was my introduction  
> to
> programming.  A very good introduction to both the high-level and the
> machine level language.


Long ago as a graduate assistant, I wrote a program to translate !BM 7074  
programs from machine language to assembler language.  This is perhaps a  
third  of the way to what you are asking.  It was a fairly easy program to  
write, so I assume that going the rest of the way to a higher level  
language would not be too difficult.

-- 
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/



      reply	other threads:[~2013-03-16  1:28 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-15 13:14 Reverse engineering Ada's compiled code Dufr
2013-03-15 15:35 ` Gautier write-only
2013-03-15 15:47 ` tmoran
2013-03-16  1:28   ` wilson [this message]
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox