Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

 Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.1 Syntaksbeskrivelse Syntaksdiagrammer og EBNF-notation.

Lignende præsentationer


Præsentationer af emnet: " Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.1 Syntaksbeskrivelse Syntaksdiagrammer og EBNF-notation."— Præsentationens transcript:

1  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.1 Syntaksbeskrivelse Syntaksdiagrammer og EBNF-notation

2  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.2 Emner  Syntaks og semantik  Syntaktiske entiteter og syntaktiske kategorier  Syntaksdiagrammer  EBNF-notation  Rekursion i syntaksbeskrivelser

3  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.3 Syntaks og semantik (1)  På dansk kombinerer vi bogstaver til ord, ord og skilletegn til sætninger, sætninger til afsnit,...  For at resultatet skal blive acceptabelt, er det en forudsætning at vi benytter ord der er i sproget konstruerer meningsfyldte sætninger –grammatisk –indholdsmæssigt

4  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.4 Syntaks og semantik (2)  Syntaks form / grammatik  Semantik indhold / betydning  Korrekthedsniveauer syntaktisk korrekthed semantisk korrekthed logisk korrekthed (sandt)

5  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.5 Korrekthedsniveauer (1)  En mand stor hus sø  Farveløse grønne ideer sover rasende  Jordnødden åd elefanten  Elefanten åd jordnødden  Min bil er rød  Det er torsdag i dag

6  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.6 Korrekthedsniveauer (2) Syntaktisk korrekt Semantisk korrekt Logisk korrekt NejJa Nej JaNej

7  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.7 Tvetydighed  Han elskede pigen på banegården  Korrekt at lade Arnesen skyde  Hun var skidefuld og på rulleskøjter

8  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.8 Demonstration Hornorkester fanebærerdemonstrant Hornorkester trompetist basunist t t b t f f d t b t f t f t b d t t b t b f d d

9  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.9 Syntaksdiagrammer (1)  Et syntaksdiagram er et navngivent diagram bestående af en række ‘pile’ afbrudt af symboler og af navne på syntaksdiagrammer.  Et syntaksdiagram definerer alle de følger af symboler som opnås ved at gennemløbe det i pilenes retning.  Symboler kaldes syntaktiske entiteter; diagrammer kaldes syntaktiske kategorier.

10  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.10 Syntaksdiagrammer (2)  Syntaktiske entiteter (symboler)  Syntaktiske kategorier (diagrammer)  Pile

11  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.11 EBNF-notation for picodansk  Sætning ::= Grundled Udsagnsled Genstandsled  Grundled ::= “en” [ Adjektivliste ] Navneord  Udsagnsled ::= spiser” | “kører” | “løber” | “skovler”  Genstandsled ::= Grundled  Adjektivliste ::= Adjektiv { “,” Adjektiv }  Adjektiv ::= “stor” | “rød” | “tung” | “mager”  | “udspekuleret”  Navneord ::= “mand” | “bil” | “hest” | “skovl”

12  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.12 EBNF-notation  Syntaktiske entiteter  Syntaktisk kategori  Sammenstilling (efter hinanden)  Valg  0 eller 1 forekomst af...  0 eller mange forekomster af...  “...”  Navn  |  [... ]  {... }

13  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.13 Præcedensregler  1. (sammenstilling)  2. | (valg)  Som sædvanligt kan parenteser bruges til at ‘overrule’ præcedensreglerne.  seq ::= “a” | “b” [ “c” ]  seq ::= (“a” | “b”) [ “c” ]

14  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.14 EBNF og syntaksdiagrammer  “...”  Navn  x y  x | y  [ x ]  { y } xy x y x x

15  Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.15  E ::= E op E | “(“ E “)” | Tal  op ::= “+” | “-” | “’” | “/”  Tal ::= “0” | “1” | “2” | “3” | “4”  | “5” | “6” | “7” | “8” | “9” Regneudtryk og parsetræ 3 + 7 * 9 E EEop EE * +TT 37 9


Download ppt " Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.1 Syntaksbeskrivelse Syntaksdiagrammer og EBNF-notation."

Lignende præsentationer


Annoncer fra Google