Syntaksdiagram

Syntaksdiagrammer er et middel til grafisk repræsentation, der anvendes i forbindelse med formelle grammatikker . De udgør et alternativ til en repræsentation i form af Backus-Naur . Deres hovedinteresse er af pædagogisk karakter, da de tillader en ofte mere intuitiv opfattelse af begrebet grammatik end tekstrepræsentationer, som er bedre egnet til de syntaktiske analyseværktøjer , der bruges til konstruktion af kompilatorer .

Princip

En grammatik udtrykt i form af syntaksdiagrammer grupperer et sæt diagrammer. Hver af disse svarer til en ikke-terminal. Et diagram svarer til den primære ikke-terminal, som teksten skal svare til, for at være en del af det sprog, der er beskrevet i diagrammetsættet.

Hvert diagram forbinder et indgangspunkt til et udgangspunkt. Diagrammet beskriver de mulige stier mellem disse to punkter, der passerer gennem figurer, der henviser til ikke-terminaler eller terminaler. Ikke-terminaler er repræsenteret af firkantede former, mens terminaler er repræsenteret af cirkulære former.

Eksempel

Et klassisk eksempel på grammatik er aritmetiske udtryk. Lad os først give en simpel grammatik i BNF:

<expression> ::= <terme> | <terme> "+" <expression> <terme> ::= <facteur> | <facteur> "*" <terme> <facteur> ::= <constante> | <variable> | "(" <expression> ")" <variable> ::= "x" | "y" | "z" <constante> ::= <chiffre> | <chiffre> <constante> <chiffre> ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"


Denne grammatik kan også udtrykkes i EBNF :

expression = terme, {"+" terme}; terme = facteur, {"*" facteur}; facteur = constante | variable | "(" , expression, ")"; variable = "x" | "y" | "z"; constante = chiffre, {chiffre}; chiffre = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9";

Et ækvivalent sæt syntaksdiagrammer:

Diagrammer for en grammatik af enkle udtryk

Se også

Relaterede artikler

eksterne links