Sunteți pe pagina 1din 6

Lista temelor din capitol

Descrierea limbajului Pascal


Metalimbajul BNF
Diagrame sintactice

Descrierea limbajului Pascal.

M e t a l i m b a j u l BNF.
Programa const din simboluri a unui limbaj oarecare scris dup anumite reguli, reguli
sintactice, adic reguli de scriere corect a instruciunilor programului. Sintaxa oricrui
limbaj de programare poate fi descris n mod diferit.
Pentru o descriere concis i exact a sintaxei limbajelor de programare s-au elaborat
limbaje speciale, denumite metalimbaje. Cel mai rspndit metalimaj este cunoscut sub
denumirea de BNF - Forma Normal a lui Backus.
Denumirea construciei gramaticale a limbajului se scrie ntre semnele "<i">",de exemplu:
<identificator> , <cifr> , <ntreg fr semn> , <numr real>
Definirea unei reguli sintactice const din trei pri:
1. Partea stng - denumirea construciei gramaticale;
2. Mijloc - simbolul "::=". Care se citete "conform definiiei este";
3. Dreapta - componentele care definesc construcia gramatical.
De exemplu:
<numr negativ>::= - <numr fr semn>. Conform acestei definiii numr negativ este un
numr fr semn, adic pozitiv, n faa cruia este simbolul minus. Aceste definiii se mai
numesc "Formule metalingvistice".
Dac construcia poate avea alternative atunci componentele care definesc construcia se
despart prin simbolul "|".
De exemplu: <semn>::=+ | -;
<cifr>::=0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

M e t a l i m b a j u l BNF.
Componentele sau o grup de componente din partea dreapt a formulei metalingvistice
pot fi ncadrate n paranteze. Parantezele arat numrul de repetri care se poate
face cu aceste componente:
1. [ ] 0 sau 1 ori
( opional)
2. { } 0, 1, 2, 3, ori
3. ( ) 1 ori
Exemple: <ntreg fr semn>::=<cifr> {<cifr>};
<Identificator>::=<Liter> {<Liter> | <Cifr>};
<numr ntreg>::[<semn>] <ntreg fr semn>;
<Numr de dou cifre>::=( 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9) <cifr>.
n partea dreapt a unei formule metalingvistice pot aprea dou i mai multe
componente consecutive, aa ca n exemplele de mai sus. Situaia corespunde
operaiei de concatenare. O alt form de descriere a sintaxei unui limbaj de
programare sunt "Diagramele sintactice".