CST 116 - Oregon Institute of Technology

Download Report

Transcript CST 116 - Oregon Institute of Technology

CST 320
Compiler Methods
Dr. Sherry Yang
PV 171
http://www.cset.oit.edu/~yangs/CST320
[email protected]
(541) 885-1594
Course Description
This course is designed to introduce the basic
concepts of compiler design and operation.
Topics include lexical and syntactical analysis,
parsing, translation, semantic processing and
code generation. In addition, students will
implement a small compiler using development
tools, lex and yacc.
 We might use other tools (Boost Spirit, Phoenix
(Microsoft), Pargen, etc.)

2
Conventional Translator
skeletal
source
program
source
preprocessor
program
compiler
target
assembly
program
absolute
machine
code
loader / linker
assembler
relocatable
machine
code
library,
relocatable
object files
Structure of Compiler
Source Lexical
Program Analyzer
Tokens Syntax
(scanner)
Analysis
(Parser)
Syntactic
Structure
Semantic
Analysis
Intermediate
Representation
Optimizer
Symbol
Table
Code
Generator
Target machine
code
Evaluation Methods
The final grade, which may range from A to F, is
determined by a composite evaluation of the
student's performance in:
2 Tests
40%
Labs, Homework & Project
55% †
In-Class Exercises (Attendance) 5%
5
Grading
Your grade will be calculated as follows:*
92%+ = A
83%+ = B
70%+ = C
60%+ = D
59%- = F
* Class participation will be considered in evaluating "borderline"
grades.
† You must complete all labs and project in order to get a grade for
the class. Incompletes will be given if you failed to turn in all labs
and project. The highest grade that you can receive for the class
once the incomplete has been removed is a B.
6
Textbook

Optional / Recommended Text
 Parsons,

Introduction to Compiler Construction
References:
 Aho,
Sethi, and Ullman, Compilers: Principles,
Techniques, and Tools, Addison-Wesley, 1986.
 Fischer and LeBlanc, Crafting a Compiler with C,
Benjamin Cummings, 1991.
7
Student Responsibilities

Lecture and Lab Attendance:
 Students
are expected to attend all class sessions and
labs. If you know you will be absent on a certain day,
please inform the instructor in advance so
arrangements can be made to provide you with the
material covered. Please make every effort to attend
all class sessions. There will be no make up in-class
exercises.
 CSET Rule: No Laptops are allowed during lecture.
 No cell phones & texting.
8
Student Responsibilities

Tests and Final Exam:
 All
tests are open book, open notes. No electronic
devices are allowed.
 There will be no make up tests unless there is an
emergency. If you miss a test for any reason, you can
take an optional final to make it up. No excuses are
necessary.
 In case of emergency, please contact Vice President of
Student Affairs, Dr. Erin Foley’s office. She will
inform all of your instructors.
9
Student Responsibilities

Academic Dishonesty:
 No
plagiarism or cheating is allowed in this class.
Please refer to your student handbook regarding
policies on academic dishonesty. A copy of the
policy is posted on the class webpage.
 It is okay to get help on your assignments. Please
acknowledge all source of help, including them in the
program documentation as appropriate.
10
Student Responsibilities

Homework & Labs:
 All
labs are due via email by midnight on the due
date. You must follow the assignment submission
guidelines below.
11
Lab Submission Guidelines



All labs are due via email by midnight on the due
date. The instructor will send out an email upon
receiving your lab. If you do not receive an email
within 24 hours of submitting the lab, it is YOUR
responsibility to contact the instructor by email or
phone. If you do not contact the instructor within 48
hours after the due date, the lab is considered late.
There will be a 20% penalty per week for late labs.
All labs and late labs must be turned in by
Wednesday of Dead week to be graded.
12
Lab Submission Guidelines
1. Zip up all files required to build the lab.
2. Include a “Readme” file as appropriate.
3. The archive should also include any other deliverables
as called out in the assignment write-up.
4. The archive will be attached to an email with subject
line:
CST320 Lab #x – first name last name
Email the archive to
[email protected] & [email protected]
13

Any student with a disability who anticipates a
need for accommodation in this course is
encouraged to talk with the instructor about
his/her needs as soon as possible.
14