Connecting high-level programming constructs to assembly language using Frances: tutorial presentation
Kian L. Pokorny, Tyler Sondag, Hridesh Rajan · 2010
Central to computing is machine code generation. Upper level undergraduate students studying computing are quite familiar with high-level languages. Most undergraduate programs in computing begin with a course involving computer programming in a highlevel language and as students progress through their studies they gain more experience with high-level languages. Not only is the machine code central to upper level courses in computer science, introductory programming texts address the issue of how high-level languages are translated to execute on the machine [3, 4]. In recent years, as the field of computing has expanded, courses in assembly language have been supplanted with more timely material [1]. In the most recent ACM curricula guidelines assembly language is only mentioned in one of the fourteen sections, Architecture and Organization [2]. One of the ten subsections herein has nine hours recommended and there are nine learning objectives for this subsection. The ninth learning objective is: “Understand how, at the assembly language level, how parameters are passed to subroutines and how local workplace is created and accessed ” [2]. Courses in computer architecture, operating systems and compiler design revolve around machine