Pengantar Teknik Kompiler

gorgeousvassalΛογισμικό & κατασκευή λογ/κού

7 Νοε 2013 (πριν από 3 χρόνια και 7 μήνες)

77 εμφανίσεις

Pengantar Teknik
Kompiler

MDP 2012

Compiler Techniques

Course Overview

MDP 2012

Compiler Techniques

MDP 2012

Compiler Techniques

Course Materials

MDP 2012

Compiler Techniques

Requirements

MDP 2012

Compiler Techniques

C
ourse

Topics

MDP 2012

Compiler Techniques

About You!

MDP 2012

Compiler Techniques

Compiler Review

MDP 2012

Compiler Techniques

What is a Compiler?


MDP 2012

Compiler Techniques

Compiler vs. Interpreter
(1/5)

MDP 2012

Compiler Techniques

Compiler vs. Interpreter
(2/5)

MDP 2012

Compiler Techniques

Ideal concept:


Compiler

Executable

Source code

Executable

Input data

Output data

Interpreter

Source code

Input data

Output data

Compiler vs. Interpreter
(
3
/5)

MDP 2012

Compiler Techniques

Compiler vs. Interpreter
(
4
/5)

MDP 2012

Compiler Techniques

Translator

Virtual machine

Source
code

Intermed
.
code

Intermed
.
code

Input
Data

Output

Compiler vs. Interpreter
(5/5)

MDP 2012

Compiler Techniques

Phase of compilations

MDP 2012

Compiler Techniques

Scanning/Lexical
analysis

MDP 2012

Compiler Techniques

Parsing

MDP 2012

Compiler Techniques

Parse tree

MDP 2012

Compiler Techniques

Example:

Parsing rules for Pascal

MDP 2012

Compiler Techniques

Pascal code example

MDP 2012

Compiler Techniques

Example: parse tree

MDP 2012

Compiler Techniques

Semantic analysis

MDP 2012

Compiler Techniques

Example: AST

MDP 2012

Compiler Techniques

(Intermediate) Code
generation

MDP 2012

Compiler Techniques

Machine independent
optimization

MDP 2012

Compiler Techniques

Target code generation

MDP 2012

Compiler Techniques

Machine
-
dependent
optimization

MDP 2012

Compiler Techniques

MDP 2012

Compiler Techniques

When should we compile?


MDP 2012

Compiler Techniques

Aren’t compilers a solved problem?

Aren’t compilers a solved problem?

MDP 2012

Compiler Techniques

MDP 2012

Compiler Techniques

Role of compilers


Performance Anxiety

MDP 2012

Compiler Techniques

Compilers Don’t Help
Much

MDP 2012

Compiler Techniques

A Big
BUT

MDP 2012

Compiler Techniques

Why Compilers Matter

MDP 2012

Compiler Techniques

Program Analysis

MDP 2012

Compiler Techniques

Anatomy of an Analysis

MDP 2012

Compiler Techniques

Analysis Properties

MDP 2012

Compiler Techniques

Levels of Analysis

MDP 2012

Compiler Techniques

Optimization =

Analysis + Transformation

MDP 2012

Compiler Techniques

Applications

MDP 2012

Compiler Techniques

Current Challenges

MDP 2012

Compiler Techniques

MDP 2012

Compiler Techniques

Exciting times

Compiler

Programmer

Runtime

Code

Code

Specification

Future behavior


Feedback

H/S Profiling