Welcome to the upgraded MacSphere! We're putting the finishing touches on it; if you notice anything amiss, email macsphere@mcmaster.ca

Assembly Language Representation and Graph Generation in a Pure Functional Programming Language

Loading...
Thumbnail Image

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

<p>In industry many legacy systems exist which run mission or safety critical code which do not have adequate requirements documentation. This thesis demonstrates how the use of a functional programming language eases a flexible and modular approach to the construction of libraries and tool suites that allow the manipulation of assembly language programs. The tools and libraries created with this method are used in a larger project of reverse engineering requirements from legacy assembly programs.</p> <p>The modules presented operate from the assembled ".lst" format, which is the result of assembling the source files, and includes the calculated address in memory and the binary version of the given instructions. Our libraries provide representations of assembly programs in an abstract data type and as internal graph representations, and conversions to a GXL graph format and to other special-purpose XML representations.</p> <p>The use of Haskell as an implementation language is explored in the context of a software engineering project, and some of the benefits and disadvantages of such a choice are discussed. This work was funded by Ontario Power Generation and CITO (Communications and Information Technology Ontario).</p>

Description

Citation

Endorsement

Review

Supplemented By

Referenced By