Сайтқа презентация қосу

Алгоритмдік тілдің алфавиті, синтаксисі және семантикасы. Тілдің синтаксисін синтаксистік

Қазақстан Республикасының Білім және ғылым министрлігі Семей қаласының Шәкәрім атындағы мемлекеттік университеті

СӨЖ
Тақырыбы: Алгоритмдік тілдің алфавиті, синтаксисі және семантикасы. Тілдің синтаксисін синтаксистік диаграмма және метатіл формуласы көмегімен сипаттау. Тобы: Т- 313 Орындаған: Анешова Т.Б. Тексерген: Рысжанова А.С.

Семей ,2015ж

Алгоритмдік тіл — алгоритмді жазуға және оны пайдаланып программа құруға арналған тіл. Кез келген тіл cияқты ол символда жиынтығынан (алфавит), алгоритмдерді жазу ережелерінен (синтаксис және жазуларды түсіндіру мәтіндерінен (семантика) тұрады. Информацияны өндеу алгоритмін түрлі жолдармен құруға болды, мысал, — табиғи (сөздер арқылы күнделікті жазылатын) тілде; — блок-схема түрінде; — алгоритмдіктілде.

Алгоритмдік символдардын пайдаланып, алгоритмді ықшамды түрде алгоритмдік тідде жазуға болады. Мысалы: Алг факториал 1. енгізу п 2. к:=1; г:=1 3. г:=г*к 4. к:=к+1 5. егер к<=п өту 3 6. шығару г 7. соңы

Алгоритмдік тілдің негізгі белгілері латын не орыс алфавиттері әріптері , қандай да бір таңбалар мен шартты белгілер болуы мүмкін. Алгоритмдік тілдің құрылымы : сөздер , сөз тіркестері (фразалар , сөйлемдер ), кестелер мен кестелер жүйесі Алгоритмдік тілдің ерекшелігі: табиғи тілден бірмәнділігі мен айқындылығы жағынан

Тілдің алфавиті программаның элементтерін құруда қолдануға болатын символдар жиынынан тұрады. Оған әріптер, цифрлар және арнайы белгілер кіреді. Тіл ерекшеліктіріне қарай символдар тобын шартты түрде төмендегі топтарға жіктеуге болады, олар: атау ретінде (идентификатор) пайдаланылатын символдар; цифрлар; айыру белгілері; арнайы символдар.

Ең алғашқы алгоритмдік тіл 1955 ж. пайда болды. Ол Фортран тілі. Ол ғылыми-техникалық және инженерлік есептерді шешуде қолданылды. Фортранды (Formula translator ағылшын сөзінің алғашқы буындарынан құрылған – формулалар аудармасы) Джон Бэкусаның басқаруымен IBM фирмасының қызметкерлері құрды. Көп жылдар өте келе Фортранның көптеген нұсқалары пайда болды. Осы тілмен көптеген тілдердің кітапханасы жазылды. 1960ж. Алгол (Algoritmic language – алгоритмдік тіл) пайда болды. Бұл тіл де ғылыми жұмыстарға арналды және соңғы тілдердегі блоктық құрылым түсінігі енгізілді. IBM фирмасыныңі қолдауымен Кобол (Cobol ағылшынның Comnon business oriented language – жұмысқа бағытталып жалпы қабылданған тіл) тілі пайда болды. Ол экономикалық есептерді шешуге, ақпараттарды өңдеуге арналған. 1961ж.американдық профессор Джон Маккарти "ЛИСП” (List procssing language – тізім өңдеу тілі) бағдарламалау тілін ойлап тапты. 1965ж. Бейсик тілі пайда болды. 1967-1968жж. PL/1 (Programming language – бағдарламалық бағытталған әмбебап тіл) бағдарламалау тілі IBM фирмасында пайда болды. Бұл тіл қуатты, қиын тіл. Ол жоғарғы оқу орындарында, ғылыми зерттеу орталықтарында қолданылды.

Синтаксистік талдау – бұл оның, ол берілген мағынасына кейбір ерте берілген синтаксистік ережемен сәйкес келе ме Мысалы, синтаксистік талдау мағынасы компиляторды жүзеге асырады. Егер программа синтаксистік тілге сәйкес келмесе, компилятор қатені көрсетеді. Синтаксистік тілдің негізгі тапсырмасы – программа құрылымын талдау. Ереже сияқты құрылым ішінде ағаш түсіндіріледі, контексті еркін грамматикалық тілге сәйкес келетін. Қазіргі уақытта көбінесе LL(1)-талдау және LR(1)-талдау және оның варианты қлданылады. Рекурсивті жіберу көбінесе синтаксистік анализаторды қолмен программалағанда қолданылады, LR(1)-автоматты жүйе синтаксистік анализаторда қолдана отырып орындайды.

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

Программалау тілдері төмендегі элемменттерден тұрады: Символдар – бұл берілген тілдер программаның барлық мәтінін құрайтын негізгі бөлінбейтін белгілер. Барлық символдар жиыны тілдің алфавитін құрайды. Табиғи тілге қарағанда программалау тілдің алфавиті кеңірек. Ол латын әріптерін, арифметикалық амалдар белгілерін, ажыратқыш символдарды және басқа да арнайы символдарды қосады. Лексемдер - Өзіндік мағынасы бар алфавитің символдардың көрінбейтін тізбектері. Олар тілдің негізгі символдары арнқылы құралады. Бір символдан тұратын лексемдер бар болуы м үмкін, мысалы, амалдар белгілері. Кез-келген программалау тілдерінің кілттік сөздерінің нақты жинағы бар. Олар тілдің сөздігін құрайды.Программист нақты ережелер бойынша жеке меншік сөздер – идентификаторлар құрай алады. Табиғи тілде жазылғане алгоритім жазбасына қарағанда күрделірек түсіндіріледі. Лексемдер және олардың құрылу ережелері тілдің лексикасын құрайды. Өрнектер тілдің ережесіне сәйкес лексемдерден құралады. Олар кейбір мәндердің есептеу тәртібін береді. Өрнектер қарапайым тілдегі сөз тізбектеріндегі сияқты программалау тілдерінде де сол рөлді атқарады. Операторлар тілдің кейбір іс-әрекеттердің толық сипаттамасын береді. Күрделі әрекеттерді сипаттау үшін операторлар тобы керек. Бұл жағдайда операторлар құрамдас операторлар немесе блокқа біріктіріледі.

Объект-тілді сипаттау үшін метатіл қолданылуы қажет. Бірақ метатіл оъект-тілдің құрылымын бірмәнді анықтау үшін формальді тілдің бірқатар қасиеттеріне ие болуы керек, Бұдан, метатіл алдымен өзі сипатталуы қажет, бұл үшін ден сол сияқты тіл қажет -* әрине, мұндай процесстің ешқашан бітпейтіндігі туралы ой қалыптасуы мүмкін. Бірақ кез-келген метатілді сипаттау үшін табиғи тілді қолдануға болатыны дәлелденген. Осылайша формальді тілді құру үшін табиғи тілдің құралдарымен метатілді сипаттау қажет, содан кейін метатіл арқылы формальді тілді сипаттау қажет. Метатілдерді сипаттаудың екі нұсқасын қарастырайық. Ең кең тараған метатілдердің бірі - Бекус-Наур нотациялары. Бекуса-Наура формасында сөйлем құру үшін әмбебап метасимволар қолданылады: { <, >, ::=, | }. Алғашқы екі метасимволды «бұрыштық жақшалар» деп атайды – олар терминді емес сөздерді қоршауға қажет. «::=» символы «анықтама бойынша бар» деп оқылады; «»"символы – «немесе». Бекус-Наура формасында жазылған сөйлемдерде бұрыштық жақшаларда тұрған терминалды емес символ объекттілдің құрылымы анықтайтын роль атқарады. Бекус-Наур формулаларында әмбебап метасимволдардан айрықша объект-тілдің алфавитінен терминалды символдар қолданыла алады. Формальді тілдің терминалды символдары ешнәрсемен шектелмейді.

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

Операциялардың және операндтардың метатілде оң сандармен жазылған берілуі – тұрақты берілу деп аталады. Формалды грамматикада үш негізгі проблемалар қарастырылады: Енгізу проблемасы – берілген грамматикаға сай алгоритм құру және ол сол тілге сай келетінін мүмкіндік береді; Анализдің проблемасы – әрбір сөз үшін грамматикаға сай алгоритм құру және оның мәнін шығару; Бағалау проблемасы – алгоритм мәнінің дұрыстығын тексеру шарты.

Бейсик тілінде программа құру үшін өте ыңғайлы, себебі Бейсик тілінің алғашқы нұсқаларында, мысалы, қазіргі кезге дейін көп пайдаланатын нұсқасында орындалатьш нұсқаулар осы сияқты түрде құрылады да, жолдар нөмірленіп қойылады. Бірақ Бейсшаң (^Вазіс, иікВазіс, Уізиаі Вазіс сияқты нұсқалары және басқа көптеген программалау тілдері мұндай тәсілді қажет ете бермейді. Оларда құрылатын программалардың жазылуы алгоритмнің құрылымдық түрде жазылуына ұқсас. Ескерту. Кейде күрделі программалар үшін өту п операторын пайдалану программаны оқуды қиындатып жібереді, сондықтан программалаушылар өту п операторын көп пайдалана бермейді.

Арифметикалық амал белгілері: (+) – қосу; (-) –азайту; (*) – көбейту; (/) – бөлу. DIV – және (логикалық көбейту) операциясы; MOD – қалдықты табу. Мысалы: 10 MOD 3 амалының нәтижесі 1; Логикалық амал белгілері: AND – және (логикалық көбейту) операциясы; OR – немесе (логикалық қосу) операциясы; NOT – емес (терістеу немесе жоққа шығару) операциясы; XOR – арифметикалық немесе амалы; SHL – биттер (1 мен 0-дер)тіркесін солға ығыстыру; SHR – биттер (1 мен 0-дер)тіркесін оңға ығыстыру; Айыру белгілеріне бос орын, барлық басқару символдары, тыныс белгілері, ENTER (келесі жолға көшу) пернесін басу белгісі және түсініктемелер жатады. Сонымен айыру белгілері: ____ (бос орын); , (үтір); . (нүкте); : (қос нүкте); ; (нүктелі үтір) ; ` (апостроф); (;); [;] ; {;}. Қатынас таңбалары немесе салыстыру белгілері: = (тең), <>(тең емес), < (кіші), >(үлкен), <= (кіші не тең), >= (үлкен не тең).

Назарларыңызға рахмет!!!


Пән: Тілтану, Филология



Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь