Skip to main content

CS304: Compilers

Page path
  • Home /
  • Courses /
  • Course Catalog /
  • Computer Science /
  • CS304: Compilers /
  • Unit 8: Code Generation
Back to course 'CS304: Compilers'
  • Unit 8: Code Generation

    This unit is closely related to Unit 7, where the emphasis was on representation of data structures needed for run-time. While there will be some overlap, the emphasis in this unit is on instruction-level intermediate code generation and from intermediate code to target code.

    The last phase (or next to the last phase if there is a code optimization phase) of the compilation process is code generation, where the output from the previous steps is finally translated into machine code, ready to execute on the target platform. In this unit, we will start with a discussion of code generation in general before moving on to a more detailed description of the code generation process. This will include an in-depth discussion of three main areas: Instruction Selection, Instruction Scheduling, and Register Allocation. By the end of this unit, you will have a firm understanding of the code generation process.

    Completing this unit should take you approximately 17 hours.

    • Unit 8 Learning Outcomes Page
    • 8.1: Introduction to Intermediate Code Generation

    • 8.2: Detailed Example: Three Address Code (TAC)

    • 8.3: Additional Intermediate Language Generation Examples

    • 8.4: Generation of Machine Code

    • 8.5: Verification and Validation of Code Generation

Navigation

Art History
Biology
Business Administration
Chemistry
Communication
Economics
English
History
Mathematics

Creative Commons License
© Saylor Academy 2010-2018 except as otherwise noted. Excluding course final exams, content authored by Saylor Academy is available under a Creative Commons Attribution 3.0 Unported license. Third-party materials are the copyright of their respective owners and shared under various licenses. See www.saylor.org/open/licensinginformation for detailed licensing information.

Saylor Academy and Saylor.org® are trade names of the Constitution Foundation, a 501(c)(3) organization through which our educational activities are conducted.

Terms of Use | Privacy Policy