Лекция: 45 сағат С¤Ж: 45 саѓат обс¤Ж: 45 саѓат Барлыќ саѓат саны: 135 саѓ Ќорытынды баќылау: емтихан 2 семестр



бет20/31
Дата24.04.2016
өлшемі1.97 Mb.
#79257
түріЛекция
1   ...   16   17   18   19   20   21   22   23   ...   31

КРЕДИТ №3

Лекция 1

Тақырыбы: BSI стандарты. Ван– Вейнгаарден грамматикасы

1. BSI стандарты

2. Ван– Вейнгаарден грамматикасы
1. 1981 жылы стандартардың Британдық институты (british standart institute) EBNFстандартын қаита жариялады,

Bsi стандарт кеңейтілген Бэкус– Наур формасына қарағанда көрнекті болып шықты.



  • ережелер элементтері үтірмен ажыратылады

  • ереже нүктелі үтірмен аяқталады

  • пробелдер (бос орын ) мәнге ие емес.


Мысал:

Constant Declaration=” CONST”,

Constant Identifier,” =”,Conctant Expression, ”;” , {Constant Identifiier, "=", Constant Exprestion, ";"};

Constant Indefitier= indetifier

Constant Expression= Experession;
2. Ван Вейнгаарден граматикасы,

60 жылдардың соңында Algos 68 тілін дайындау барысында контексті–бос синтаксистерді ғана емес контексті шартарды да түзуге мүмкіндік беретін тілді анықтаудың жаңа формасы ұсынылды. Тілді бұлай анықтау әдісі Ван Вейнгаарден грамматикасы деген атау алды. Бұл екі деңгейлі деп аталатын грамматиканың синтаксисі келесі түрде әрекет етеді:

"гипер ереже" және "мета ережелер" жиыны беріледі, бұлардан "тудырушы ережелер" шығаруға болады. Гиперереже – бұл ереженің жай ғана “даярламасы” (заготовка). Метаереже көмегімен тілдің контексті құраушылары беріледі.
МЫСАЛ. Меншіктеуді анықтайтын ережені қарастырамыз.

REF to MODE NEST assignation :

REF to MODE NEST destination, becomes token,

MODE NEST Source.


Үлкен әріптермен бұл ережеде метасимволдар жазылған. REF және MODE метасимволы меншіктеуді қабылдап алушы (destiконструкцияnation) MODE типіндегі айнымалы болуы қажет. NEST метасимволы конструкция контекстін береді. Меншіктеу деректемесі мен қабылдап алушының контексттері сәйкес келеді. Бұл ережеден мысалы мынадай тудырушы ереже шығарып алуға болады:

Reference to real assignation:

Reference to real destination, becomes token, real sourse

Лекция 2

Тақырыбы: Вирт диаграммасы



1. Вирт диаграммасының символдары мен ережелері

2. Идентификатор синтаксисін Вирт диаграммасы арқылы бейнелеу
1. Тіл синтаксисін берудің текстік әдістері мен қатар графикалық мета тілдер де кеңінен қолданылады. Солардың ішіндегі кең танымалы-Вирт диаграммасы. Ол алғаш рет Паскаль тілінің синтаксисін бейнелеуге қолданылған. Мета символдар келесі графикалық белгілермен беріледі.

- тіл алфавитіне тиісті терминал символ


- лексема атауын, кілтті сөзді т.с.с. анықтайтын

(білдіретін) терминал символдардың тұрақты тобы.


блок



  • ереже атауын анықтайтын бейтерминал символ.


-Вирт диаграммасымен берілген ережелердегі терминал және бейтерминал символдар арасындағы байланысты қамтамасыз ететін біріктіруші сызық.

- басын бастамасын анықтайтын ереже атауы мен берілген енуші доға.


ішінде не 2 жағы дөңгеленген төртбұрыш ішінде орналасқан.

  • Бейтерминал символдар төртбұрыш ішінде орналасады.

  • Терминал не бейтерминалға сәйкес келетін әрбір графикалық элементтің бір кірісі және бір шығысы бар болады. Олар әдетте қарама-қарсы жақта бейнеленеді.

  • Әрбір ережеге өзінің графикалық диаграммасы сәйкес келеді және бұл диаграмма терминал мен бейтерминалдар доға көмегімен біріктіріледі.

  • Ережедегі альтернативтер доғаның бұтақтануы арқылы, ал итерация бұтақтардың бірігуі арқылы беріледі.

  • Енуші бір доға болуы міндетті. (әдетте сол жақ, жоғарыда орналасады), ол ереженің бастамасын береді және анықталушы бейтерминал атауымен белгіленеді. Шығушы бір доға болуы міндетті, ол ереженің соңын білдіреді. (әдетте оң жақ, төмендеу орналасады).

2. Идентификатор синтаксисін Вирт диаграммасы арқылы бейнелеу төмендегіше.
Диаграмма доғаларында әдетте стрелка қойылмайды, ал байланыс бағыттары аралық доға және бұтақтануларға қарап отырып анықталады. Вирт диаграммасы үшін арнайы стандарт жоқ, сондықтан графикалық белгілер сурет салу құралына қатысты өзгеруі мүмкін.

Вирт диаграммасы альтернативтерді, рекурсия, итерацияларды бейнелеуде мүмкіндік береді. Бейнелеу қуаты кеңейтілген БНФ мен бірдей. Бірақ ережелердің графикалық бейнесі көрнекті. Вирт диаграммасы лексикалық және синтаксистік анализаторларды құруда ыңғайлы бастапқы документ болып табылады.


Лекция 3

Тақырыбы: Синтаксистік айқындау





  1. Синтаксистік айқындаудың міндеті.

  2. Синтаксистік айқындау әдістерін классификациялау.

1. Синтаксистік айқындау синтаксистік анализдің бірінші этабы болып табылады. Оның жұмысының нәтижесінде енуші символдар тізбей программа екендігі, ал жекелеген ішкі тізбектер синтаксистік дұрыс программа обьектін құрайтындығы айқындалады. Жекелеген ішкі тізбектерді таныған соң артынша жиылған мәліметтерге сүйене отырып, олардың семантикалық дұрыстығы тексеріледі, яғни анализ жасалады. Бұдан соң программаның обьектілі модуліне не аралық көрінісіне жаңа обьектер (яғни тексеруден өткен) қосу ісі жүргізіледі.

Айқындау енуші лентаға жазылған енуші тізбектің берілген тілдің грамматикалық тудырған тізбектер жиынына жататындығын немесе жатпайтындығын дәлелдеу үшін керек.

Синтаксистік айқындауда автомат болып саналатын танушы орындайды. Сондықтан бұл процесс енуші тізбекті тану деп те аталады.

Дәлелдеудің мақсаты мына сұраққа жауап беру анализ жасалып отырған тізбек берілген тілдің дұрыс тізбектері жиынына жата ма? Жататындығы анықталса “ия” жауабы беріледі. “Жоқ” жауабы қайтару (отказ) ұғымымен байланысты. Кез-келген деңгейдегі бір мәрте қайтару жалпы қайтаруға әкеледі.

Барлық тізбекке қатысты “ия” жауабын алу үшін оны жекелеген ішкі тізбектері айқындауды жүзеге асыратын әрбір ереже үшін алу керек. Ережелер жиыны иерархиялық құрылымға ие болғандықтан, жалпы тізбекке тиісті “ия” жауабын алуды, айқындау ағашының әрбір жапырағы үшін “ия” жауабын жинау тәрізді түсінуге болады.

Төменгі бұтақтың жапырақтарының “ия” жауабы жоғарғы бұтақ жауабын алу үшін келіп қосылады.

Мұндай принцип кез-келген өндірісті басқарудың бюрократиялық жүйесіне ұқсайды.

Төменгі бөлімнен ұсынылған ұсыныс жоғарыдан бекітілгенше осылай көтеріледі.
2. Синтаксистік айқындау әдісін классификациялау.

Егер бұл мәселені элементар мета тіл деңгейінде қарастыратын болсақ онда ол былайша қойылады.

L(G) тілі G грамматикасымен берілген, мұндағы, S-бастапқы бейтерминал. Енуші тізбекті айқындау ағашын құру керек:

A=a1a2a3…an

Бұл мәселені шешудің жолдары өте көп. Танушыны дайындап шығарушының мақсаты - бұл анағұрлым қолайлы варианттарды ерекшелеп көрсету. Танушының жұмыс істеу принципіне айқындау процесін ұйымдастыруға ненің және қалай әсер ететіндігін түсіну үшін кейбір варианттарды қарастырамыз. Танушыны құру варианттарының жалпы классификациясы төменде көрсетілген.




Достарыңызбен бөлісу:
1   ...   16   17   18   19   20   21   22   23   ...   31




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет