What you need to know in ECE495S exams
You are expected to know the following terms and concepts. "Know" means, be
able to explain the item, give examples, recognize it in a given context, and
apply it to a given problem.
Understanding the material on the course slides will get you up to a 90% score
(meaning a high B grade). If you can answer background questions to this
material, (which is covered in the text book and handouts but may not have been
discussed in detail in class) you will achieve a solid A (in the exam part of
the course)
All exams are comprehensive, however the emphasis is on the recently learned
material. All exams are "open textbook and notes". However it is strongly
recommended that you page through the textbook as little as possible during the
exam. It can slow you down significantly. So, use the textbook only in
"emergencies". Each midterm exam will include a question about the syllabus.
Exams will be mixed multiple choice and prose questions.
Missing an Exam
Request for exceptions to take an exam at a different
time will not be granted, except in rare circumstances that (1) could not have
been foreseen in the first week of class and (2) are beyond the student's
control. No early exams will be possible. Once the instructor approves an
exception, you need to contact the TA to schedule an alternative exam date. If
the TA is unavailable, the student may arrange for an alternative exam with a
proctor suggested by the student and approved by the instructor. The exam will
need to be completed no later than 24 hours after the regular exam date.
Material for Midterm Exam, Fr, Sept 12 2008 (in class)
(Chapters 1-3.5 in textbook)
sample exams can be obtained from the secretary in EE339
Block diagram of a compiler. including input and output, functionality,
implementation issues, generator tools.
1-pass compilers, multi-pass compilers, tradeoffs.
Terminology: syntax, semantics; the attributes static, dynamic,
context-free/sensitive; attribute grammar, denotational semantics;
n
Scanning: regular expresions, finite automata (DFA/NFA); transition, goto,
action table; scanner generation methods; multi-character lookahead.
Material for Midterm Exam, We, Oct 15 2008 (in class)
(tentative) - (Chapters 1-13 in textbook)
material of exam 1 plus:
Grammar, Parsing: resursive descent, BNF, LL(x), LR(x), stack-based
parsing, parse tree, syntax tree, first and follow set, predicting
productions, left/right-most derivation, bottom-up/top-down parsers, parse
tables, parser generation methods, left-recursion, non-LL grammar, shift-reduce
parser, configuration set, CFSM, goto/action tables, basics on LR(k) and SLR
parsers.
Semantic processing: semantic annotations of grammar, action symbols, use
in recursive-descent and stack-based parsing; semantic records, use in in
recursive-descent and stack-based parsing; basics on symbol tables; basic
issues of runtime storage organization, processing declarations, expressions
and data structure references; processing of if, loop, case, control structures
(semantic actions and record keeping); parameter types,
activation frame, register save issues of subroutine calls.
Material for Midterm exam, We, Nov 19 2008 (in class)
(tentative): Chapters 1-16.3 in textbook
Material of previous exams, plus:
Code Generation.
Register allocation and scheduling on handouts and lecture slides.
Program Analysis.
Final Exam, Thur 12/18 3:20-5:20pm in EE115
All course material.
Paper handouts need to be understood to the extent that they provide background
material to the course slides.