• DocumentCode
    2770250
  • Title

    The Rearranger - A New Assembler Utility

  • Author

    Maurer, Ward Douglas

  • Author_Institution
    Dept. of Comput. Sci., George Washington Univ., DC
  • fYear
    2006
  • fDate
    18-22 Sept. 2006
  • Firstpage
    357
  • Lastpage
    358
  • Abstract
    According to a recently discovered theorem, the flow graph of any program, no matter how much "spaghetti code" it contains, may be reordered in such a way that it shows a loop structure. The rearranged program has no backward branches except for loopbacks, which go to the head of some loop from somewhere within that loop. No new vertices or variables are introduced; only the order of the vertices is changed. Rearrangement may be automated, for either low-level or high-level languages. We have constructed a tool, which we call a Rearranger, to act on a description of an assembly language, followed by a program written in that language. A spaghetti-code version of depth-first search has been programmed for Intel, MPS, G3, Motorola 68000, and the IBM mainframe, and successfully rearranged for all these machines
  • Keywords
    assembly language; flow graphs; program control structures; software tools; tree searching; Rearranger; assembly language; depth-first search; loop structure; program flow graph; program rearrangement; spaghetti code; Assembly; Computer science; Flow graphs; High level languages; Software engineering; Tree graphs;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Automated Software Engineering, 2006. ASE '06. 21st IEEE/ACM International Conference on
  • Conference_Location
    Tokyo
  • ISSN
    1938-4300
  • Print_ISBN
    0-7695-2579-2
  • Type

    conf

  • DOI
    10.1109/ASE.2006.66
  • Filename
    4019607