Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Grammatikker, sprog og parsing Rasmus D. Lehrmann DM67 2010 1.

Lignende præsentationer


Præsentationer af emnet: "Grammatikker, sprog og parsing Rasmus D. Lehrmann DM67 2010 1."— Præsentationens transcript:

1 Grammatikker, sprog og parsing Rasmus D. Lehrmann DM67 2010 1

2 Indhold Compiler Parsing Contextfri gramatik Backus-Naur Form Regular expression State pattern opsummering 2

3 Hvad er en compiler? Et eller flere programmer som transformere source code. Fra et sprog til et andet High-level (C#, C++ etc)  Low-level (assembly, machine code etc) Decompiler Langauge translator 3

4 Hvad gør en compiler? Omformer kode til et lower-level langauge. Source langauge  Target Langauge Front end: – Line reconstruction – Lexical Analysis – Syntax Analysis – Semantic analysis Back end: – Optimazation – Code generation 4

5 Compilerens struktur 5

6 Parsing Syntax analyse Syntax struktueren bestemmes Syntaxen bestemmes af gramatiske contextfri regler Reglerne er defineret som regular expressions, men kører rekursivt. Top-down Bottom-up 6

7 Contextfri gramatik Specifikation for syntax struktur Bestemmer programmerings sprog Sammensætter strings Terminal and nonterminal symbols – P -> a, P -> b – Q -> 0, Q -> 1 – R -> PQ – S -> R, S -> Rc Terminals: a, b, 0, 1, c Non-terminals P, Q, R and S 7

8 Backus-Naur Form ::= – ::= – | ::= | ".” ::= – ::= "," ::= "Sr." | "Jr." | | "" 8

9 Extended Backus-Naur Form Normal BNF: – ::= 0│1│2│3│4│5│6│7│8│9 – ::= │ Kan omformuleres i EBNF til: – ::= { } – Tuborg parenteser betyder 0 til mange – Firkantet parenteser betyder 0 til 1 9

10 Regular expression Anvendes til at finde match ud fra bestemte kriterier F.eks. Match, contains, followed by, infront of Kendt fra blandt andet texteditors og browsers 10

11 State pattern Giver en struktureret tilgang til objekters opførsel. Ved en specifik hændelse kan objekter skifte tilstand. F.eks. et tegneprogram 11

12 State pattern diagram 12

13 Opsummering Grammatiker, sprog og parsing Gennemgang af en compiler Uddybning af virkemidlerne i en compiler En compiler bruges til at lave et program 13


Download ppt "Grammatikker, sprog og parsing Rasmus D. Lehrmann DM67 2010 1."

Lignende præsentationer


Annoncer fra Google