ЎЗБЕКИСТОН РЕСПУБЛИКАСИ АХБОРОТ ТЕХНОЛОГИЯЛАРИ ВА КОММУНИКАЦИЯЛАРИНИ РИВОЖЛАНТИРИШ ВАЗИРЛИГИ
МУҲАММАД АЛ-ХОРАЗМИЙ НОМИДАГИ
ТОШКЕНТ АХБОРОТ ТЕХНОЛОГИЯЛАРИ УНИВЕРСИТЕТИ
ТИЗИМЛИ ДАСТУРЛАШ
ФАНИДАН
Бажарди:Qirg’izboyev O.O
Қабул қилди: Шарипов Б.А.
ТОШКЕНТ - 2022
2- тажриба иши. Синтаксис тахлил дастурини лойихалаштириш
Мавзу Берилган дастур матнини синтаксис тахлилчисини лойихалаштириш, яъни берилган кирувчи дастур матнини синтаксис тахлил килувчи ва натижада синтаксис тахлилчи чикиш дарахтини хосил килувчи дастурни ёзиш .
Ишдан максад:
Ушбу тажриба ишида берилган дастур матнини синтаксис тахлилчисини лойихалаштириш, яъни берилган кирувчи дастур матнини синтаксис тахлил килувчи ва натижада синтаксис тахлилчи чикиш дарахтини хосил килувчи дастурни ёзиш масаласи курилади. Кирувчи тилдаги дастур матни белгилар (матнли)файли куринишида берилади.
Тажриба ишининг натижаси булиб, синтаксис тахлилчининг дастурий реализацияси ва ГОСТ талабларига, курс ишига куйилган Университет стандартларига мос келувчи тушунтириш вараклари хисобланади.
Назарий кисм.
Компиляторнинг кирувчи тили куйидаги талабларни каноатлантириши керак:
кирувчи дастур program калит сузи билан бошланади ва end;калит сузи билан тугайди;
кирувчи дастур каторларга ихтиёрий равишда булиниши мумкин, барча пробеллар ва каторни утказиш каторлари компилятор томонидан инкор этилиши керак;
кирувчи дастур матни ихтиёрий узунликдаги изохларни уз ичига олиши мумкин, улар компилятор томонидан инкор этиладилар;
кирувчи дастур операторларни чизикли модулига эга ягона модулни ифодалаши керак, процедураларни ва функцияларни чакириш каралмайди;
кирувчи дастурнинг куйидаги операторлари варианти каралиши керак:
узлаштириш оператори <узгарувчи>:=<ифода>;
шарт оператори if <ифода> then <оператор>, ёки if <ифода> then <оператор> else <оператор>;
таркибий оператор begin … end;
такрорлаш оператори;
операторлардаги ифодалар куйидаги амаллардан (минимум)ташкил этиши мумкин:
арифметик кушиш (+) ва айириш (-) амаллари;
таккослаш амаллари кичик (<), катта (>), тенг (=);
мантикий амаллар «ва» (and), «ёки» (or), «йук» (not);
кушимча, берилган вариантда кузда тутилган, арифметик амаллар;
ифодаларда операндлар булиб идентификаторлар иштирок этадилар (узгарувчилар) ва константалар (мумкин булган константалар тури берилган вариантда курсатилган);
кирувчи дастурда учрайдиган барча идентификаторлар ушбу вариантда курсатилган турга эга узгарувчи сифатида кабул килиниши керак ( идентификаторларни кирувчи дастурда аввалдан эълон килиниши талаб килинмайди);
Амал устунлигини бижарувчи мустакил равишда танлаши керак(амал устунлиги кирувчи тил грамматикасида хисобга олинади). Амал устунлигини узгартириш учун думалок кавслардан фойдаланилади.
Чикувчи (натижавий) тил сифатида Intel 80x86 туридаги процессорларнинг ассемблер тили Borland фирмасининг ассемблер тили учун курилган модификациясидан фойдаланилади.
Масала вариантига куйилган кушимча талаблар:
– кушимча арифметик амаллар: чапга сурилиш (<<) ва унгга сурилиш (>>);
– кирувчи тил такрорлаш оператори: repeat <оператор> until <ифода>;
– оптималлаш: ортикча амалларни йукотиш;
– берилганлар тури: Word;
– изох тури: изохлар думалок кавсларда «юлдузчали»: (*…*).
Курс ишини бажариш учун Microsoft Visual Studio .NET 2003(C++тили)дастури кушимча Trolltech Qt v4.0.1.класс кутубхоналари урнатилган мухитидан фойдаланилди.
Do'stlaringiz bilan baham: |