Studopediya

КАТЕГОРИИ:


Астрономия- (809) Биология- (7483) Биотехнологии- (1457) Военное дело- (14632) Высокие технологии- (1363) География- (913) Геология- (1438) Государство- (451) Демография- (1065) Дом- (47672) Журналистика и СМИ- (912) Изобретательство- (14524) Иностранные языки- (4268) Информатика- (17799) Искусство- (1338) История- (13644) Компьютеры- (11121) Косметика- (55) Кулинария- (373) Культура- (8427) Лингвистика- (374) Литература- (1642) Маркетинг- (23702) Математика- (16968) Машиностроение- (1700) Медицина- (12668) Менеджмент- (24684) Механика- (15423) Науковедение- (506) Образование- (11852) Охрана труда- (3308) Педагогика- (5571) П Arhitektura- (3434) Astronomiya- (809) Biologiya- (7483) Biotehnologii- (1457) Военно дело (14632) Висока технологиите (1363) Geografiya- (913) Geologiya- (1438) на държавата (451) Demografiya- ( 1065) Къщи- (47672) журналистика и SMI- (912) Izobretatelstvo- (14524) на външните >(4268) Informatika- (17799) Iskusstvo- (1338) История- (13644) Компютри- (11121) Kosmetika- (55) Kulinariya- (373) култура (8427) Lingvistika- (374) Literatura- (1642) маркетинг-(23,702) Matematika- (16,968) инженерно (1700) медицина-(12,668) Management- (24,684) Mehanika- (15423) Naukovedenie- (506) образование-(11,852) защита truda- (3308) Pedagogika- (5571) п Политика- (7869) Право- (5454) Приборостроение- (1369) Программирование- (2801) Производство- (97182) Промышленность- (8706) Психология- (18388) Религия- (3217) Связь- (10668) Сельское хозяйство- (299) Социология- (6455) Спорт- (42831) Строительство- (4793) Торговля- (5050) Транспорт- (2929) Туризм- (1568) Физика- (3942) Философия- (17015) Финансы- (26596) Химия- (22929) Экология- (12095) Экономика- (9961) Электроника- (8441) Электротехника- (4623) Энергетика- (12629) Юриспруденция- (1492) Ядерная техника- (1748) oligrafiya- (1312) Politika- (7869) Лево- (5454) Priborostroenie- (1369) Programmirovanie- (2801) производствено (97182) от промишлеността (8706) Psihologiya- (18,388) Religiya- (3217) с комуникацията (10668) Agriculture- (299) Sotsiologiya- (6455) спортно-(42,831) Изграждане, (4793) Torgovlya- (5050) превозът (2929) Turizm- (1568) физик (3942) Filosofiya- (17015) Finansy- (26596 ) химия (22929) Ekologiya- (12095) Ekonomika- (9961) Telephones- (8441) Elektrotehnika- (4623) Мощност инженерно (12629) Yurisprudentsiya- (1492) ядрена technics- (1748)

О дърво. Методи за конструиране на дисплея на дърво




Левостранна и десностранна констатации

Sentential форма на граматика. Език посочено граматика

Изводът се нарича пълна, ако въз основа на веригата б, в резултат на изхода вече не може да отнеме един-единствен изход стъпка. С други думи, на изхода се нарича пълно, ако веригата Б, получената продукция е празен или съдържа само крайни символи на граматика G (T, N, P, S):

битов *. Б верига, полученият завършен изхода, наречен крайния изход верига.

В горния пример, всички конструирани заключения са пълни, и, например, на изхода STH * -4FF (на първата верига в примера) ще бъде непълна.

Sentential форма граматика G (T, N, Р, S), V = десет - верига от символи AIV * изход от началния символ на граматика S:

STH * а. Ако Ait на веригата * са получени в резултат на извършената изход, тя се нарича крайната sentential форма или оферта език, генерирани от тази граматика.

В "-479" и "18" примера по-горе символни низове са ограничен граматични форми sentential знак цяло число със знак, тъй като има констатации STH * -479 и STH * 18 (Примери 1 и 2). Верига на F8 O 2 е sentential форма като истински STH * F8, но това не е крайният изход верига.

Език L, предварително определено граматика G (T, N, Р, S) - набор от всички крайни форми език граматика sentential G. L, предварително определено граматика G, означен като L (G). Очевидно е, че азбуката на език L (G) е набор от символи терминални T граматика, като всички крайния sentential форма граматика - верига над Т. азбука

Две граматика G (T, N, P, S) и G '(T', N ', Р', S ') са еквивалентни, ако те са еквивалентни езици определени: Л (G) = L (G'). Еквивалентно граматика трябва да има пресичащи се набори от терминални символи VTÇVT'¹ Æ (обикновено тези набори съвпадат VT = VT "), но на снимачната площадка на не-терминални символи, на граматическите правила и стартов те могат да бъдат коренно различни.

Левостранен заключение - сключването, където на всеки етап от правило граматика винаги се прилага към най-левия символ nonterminal във веригата.

Десния заключение - сключването, където на всеки етап от правило граматика винаги се прилага за най-дясната nonterminal символ във веригата.

В вериги изхода на същия пример, пин 1 е от лявата страна, терминали 2.3 - дясна ръка.

Граматики за типове 2 и 3 (КФ граматики и редовни граматики) за всяко sentential форма винаги е възможно да се построи дясно и ляво терминали. За други типове граматики не винаги е възможно, защото на структурата на техните правила не винаги е възможно да се извърши подмяна на най-лявата или най-дясната nonterminal във веригата.



О дърво граматика G = (Т, N, P, S) е дърво (графика), която съответства на низ оттегляне, и отговаря на следните условия:

· Всеки връх на граматика на дърво е означена А I (TEN);

· Корена на дървото е връх, посочен от старт символ на граматика - S;

· Листата на върха на дървото са етикетирани крайни символи на граматика или празен символ λ верига;

• Ако определен възел на дървото е маркиран с AIN, и свързаните компоненти - символи б 1 б 2, ..., б N; п> 0, "п ≥ I> 0; б и (Тене {λ} ), в граматика G = (Т, N, P , S) има правило А → б 1, б 2, ... б п IP.

Това определение предполага, че правилата на дървовидна структура в изходящия форма винаги е възможно да се изгради само граматики типове 2 и 3 (контекстно-свободни и редовни). За други типове граматики, деривация дърво по този начин може да се изгради не винаги е (или пък тя ще има малко по-различен външен вид).

Въз основа на дървета изход горния пример веригите за изход 1 и 2. Тези дървета са показани на Фиг.20.




Фиг. 20. Примери за деривация дървета за граматиката

десетични число със знак

За да се изгради деривация дърво, достатъчно, за да има изход верига. О дърво могат да се изграждат по два начина: отгоре-надолу и отдолу-нагоре. За строго формализирана дърво строителната продукция винаги е по-удобно да се използва добре дефинирана изхода: или лява или дясна ръка.

При изграждането на деривация дърво от отгоре надолу Строителството започва с начален символ на граматиката, която се поставя в основата на дървото. След това, в избрания правило граматика необходимо, на първо корен символ стъпка О се разкрива от няколко символи на първо ниво. Във втория етап между крайните върха на дървото е избран екстремни (лявата - за въвеждане на лявата страна, Четвъртата картина - за дясно) връх, означена nonterminal символ за този връх е избран желания правило граматика, и разкрива няколко пика следващото ниво. Строителство на дървено приключва, когато всички терминални върховете на обозначени клеми, в противен случай е необходимо да се върне към втората стъпка и да продължи сграда.

Строителната продукция дърво от долу нагоре като се започне с листата на дърветата. Както листата са избрани крайни изходящ извод символи вериги, които в първия етап на строителството формират крайния ниво на дървото. Изграждане на дървото минава през нивата. Във втория етап на строителството в правилото за граматика е избран, първата от които отговаря на екстремни герои в нивото на дървото (най-десните знаци в полето за двустранен печат и крайно леви - най-вляво). Избрани най-високо ниво са свързани с нов възел, който е избран от лявата страна на правилото. Новият връх стигне до нивото на дърво, вместо избраните върхове. Строителство дърво е завършен, ако не бъде постигнато коренът (означени с терминален символ), но в противен случай е необходимо да се върне към втората стъпка и да го повтори над получи нивото на дървото.

Както всички известни програмни езици имат запис нотация "ляво - дясно", съставител и винаги прочита източник програмата от ляво на дясно (от горе до долу, а ако програмата е разделена на няколко линии). Следователно, за да се изгради един изход от дърво "низходяща", който обикновено се използва ляв изход, както и да се изгради "отдолу-нагоре" - изход десен. програми за конвенцията за четене "ляво на дясно" не само се отразява на реда на анализ на програмата от компилатора, но също така и по нареждане на операции - при липсата на скоби, повечето операции връстници се извършват по ред от ляво на дясно, което е от съществено значение.





; Дата на добавяне: 27/12/2014; ; Отзиви: 401; Нарушаването на авторски права? ;


Ние ценим Вашето мнение! Беше ли полезна публикува материал? Да | не



ТЪРСЕНЕ:


Вижте също:



zdes-stroika.ru - Studopediya (2013 - 2017) на година. Не е авторът на материала, и предоставя на студентите възможност за безплатно обучение и употреба! Най-новото допълнение , Ал IP: 66.249.93.154
Page генерирана за: 0.016 сек.