Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
7Activity
0 of .
Results for:
No results containing your search query
P. 1
Automaadid, keeled ja translaatorid konspekt

Automaadid, keeled ja translaatorid konspekt

Ratings:

4.0

(1)
|Views: 729 |Likes:
Published by Rein Raudjärv
Automaadid, keeled ja translaatorid (MTAT.05.085)
Generatiivsed grammatikad TTS baasil
Automaadid, keeled ja translaatorid (MTAT.05.085)
Generatiivsed grammatikad TTS baasil

More info:

Published by: Rein Raudjärv on Mar 19, 2008
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

09/28/2010

pdf

text

original

 
Automaadid, keeled ja translaatorid (MTAT.05.085)Rein Raudjärv
GENERATIIVSED GRAMMATIKAD TTS BAASIL
Sisukord
Sisukord .................................................................................................................................1TTSist.....................................................................................................................................2Tähistus ..................................................................................................................................21. Kontekstivaba grammatika .................................................................................................3Grammatika metakeel.....................................................................................................3TTS grammatika metakeel..............................................................................................42. Derivatsioon, keel...............................................................................................................53. Analüüsi puu, kanooniline derivatsioon ..............................................................................64. Süntaksi analüüsi ülesanne ...............................................................................................85. Eelnevusrelatsioonid, eelnevusgrammatika (EG).KVG teisendamine eelnevusgrammatikaks ...........................................................................9Eelnevusrelatsioonide arvutamiseeskiri..........................................................................9Eelnevuskonfliktid .........................................................................................................10Eelnevusteisendused ....................................................................................................106. Pööratava eelnevusgrammatika analüsaator ...................................................................11Lausevormi baas ...........................................................................................................11Pööratavate eelnevusgrammatikate analüsaator ..........................................................117. Konteksti kasutamine redutseerimiseks ja vastav analüsaator .......................................13Sõltumatu kontekst ........................................................................................................13BRC(1,1) analüsaator ...................................................................................................148. Derivatsioonist sõltuv kontekst.........................................................................................159. Konteksti juurdetoomine ..................................................................................................1710. Analüüsi puu moodustamise juhtimine. Analüsaatori lõplik algoritm .............................18Analüüsi puu liiasus ......................................................................................................18TTSi semantilised muutujad ..........................................................................................19Analüsaatori lõplik algoritm ...........................................................................................2011. TTS Konstruktori üldine skeem ......................................................................................21Lisa 1. Trigoli keele grammatika ..........................................................................................22
 
Automaadid, keeled ja translaatorid (MTAT.05.085)Rein Raudjärv
TTSist
Translaatorite tegemise süsteem (TTS)
– eeskätt loengukursuse "Automaadid, keeled jatranslaatorid" (MTAT.05.085) omandamise hõlbustamiseks loodud programm, misvõimaldab töötada kontekstivabade grammatikatega (KVG): teha Konstruktori tabeleid ja anaüsida antud grammatikale vastava keele sõnu. TTS on realiseeritudWindows95/NT/2000 keskkonnas, programmeerimiskeeled on C ja C++.
Trigol
– TTS jaoks loodud primitiivne programmeerimiskeel.TTS kodulehekülg:http://www.cs.ut.ee/~isotamm/tts/HELP.HTM
Tähistus
G
grammatika
 KVG
kontekstivaba grammatika
 EG
eelnevusgrammatika
tähestik (
,...0,1,,,
b Aa
)
 N 
mitteterminaalne e. mõistete tähestik (
,...,
 B A
)
terminaalne e. lekseemide tähestik (leksika) (
,...#,0,1,,
ba
)
 P 
produktsioon (
x A
)
aksioom
produtseerib (
 produces
)
on vahetult tuletatav
on tuletatav
?
?
<
eelneb
=
ajastub
>
 järgneb
 
Konstruktor (
Constructor 
)
xxx.grm[xxx.sem]xxx.prmxxx.vxxx.htxxx.pmxxx.txxx.ttxxx.sm[xxx.lc][xxx.rc][xxx.dc]
Analüsaator (
Parser 
)
yyy.xxxyyy.prmyyy.ptyyy.t[yyy.it][yyy.kt]
Interpretaator (
Interpreter 
)
Lahendamistulemused
Kompilaator (
Compiler 
)
yyy.asmyyy.exe
TTSi üldine skeem
2
 
Automaadid, keeled ja translaatorid (MTAT.05.085)Rein Raudjärv
1. Kontekstivaba grammatika
Def.Generatiivseks grammatikaks
nimetatakse järjestatud nelikut
( )
 P G
 N 
,,,
=
,kus
 N 
on
mitteterminaalne
 
tähestik
(
non-terminal vocabulary 
),
on
terminaalne
 
tähestik
(
terminal vocabulary 
),
 P 
on
produktsioonide
 
hulk
kujul
(
*
 y x y x
+
,
on
aksioom
– fikseeritud täht tähestikust
 N 
, mida ei saa kasutada teiste mõistetedefineerimisel (produktsiooni paremas pooles).Mitteterminaalse tähestiku sümboleid nimetatakse
mõisteteks
(nt.
,...,,
 B A
).Terminaalse tähestiku (
leksika
) sümboleid nimetatakse
lekseemideks
(nt.
,...,,,1,0,#
ba
).Hulka
 N 
=
nimetatakse
antud
 
grammatika tähestikuks
.
Def.
Tähestiku
sümbolite järjendit
 x x x x
in
...
10
nimetatakse antud tähestiku
sõnaks
.
*
on tähestiku
baasil moodustavate kõigi sõnade hulk.
+
on tähestiku
baasil moodustavate kõigi positiivse pikkusega sõnade hulk.
Def.Kontekstivabaks grammatikaks
(KVG) nimetatakse generatiivset grammatikat
( )
 P  KVG
 N 
,,,
=
, kus
 P 
on
 
produktsioonide hulk kujul
( )
*
 x A x A
 N 
.
Süntaks
– reeglite kogu, mis määrab, kuidas antud keeles kirjutada semantiliselt õigeidlauseid?. Semantilised õiged laused määrab produktsioonide hulk.
Interpretaator 
on programm, mis jooksutab (
executes
) teisi programme.
Kompilaator 
on programm, mis tõlgib teksti ühest arvutikeelest teise.TTSis koostatakse ige pealt algkeelsest tekstist nn. analüüsipuu (Anasaatoriülesanne). TTS Interpretaator läbib analüüsipuu ja „täidab selle käske”. TTS Kompilaator tõlgib analüüsipuu Assembleri keelde.Transleerimise?käigus muutub grammatika süntaks ja leksika, aga säilib semantika.Süntaks-orienteeritud transleerimine?.
Grammatika metakeel
Kõige lihtsam on programmides kasutada produktsioonide keelt?.Algol 60 grammatika pandi kirja BNF meetodil.
BNF
(Backus Normal Form või Backus-Naur Form) – nagu produktsioonide keel, aga esitus teine: <Mõiste> := <Definitsioon>.Tundmatu keele kirjeldamiseks on hõlpsasti loetav
Pascali grammatika
. Näide:
3

Activity (7)

You've already reviewed this. Edit your review.
1 thousand reads
1 hundred reads
Tanel Teinemaa liked this
Urmas liked this
Ropka Kivivalvur liked this
Kaarel Tark liked this

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->