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




Презентация қосу
Тақырыбы:
Алгоритмдік тілдің алфавиті,
синтаксисі және семантикасы. Тілдің
синтаксисін синтаксистік диаграмма
және метатіл формуласы көмегімен
сипаттау.

Орындаған:Тәңірбергенов Е.С
Т-313 топ
Жоспар: 
I.Кіріспе
  1)Алгоритмді жазу жолдары
II.Негізгі бөлім
  2) Алгоритмдік тілдің         
құрылымы
  3) Тілдің синтаксисін   синтаксистік 
диаграмма және   метатіл формуласы 
көмегімен   сипаттау. 
  III.Қорытынды
  Алгоритмдік тіл (ағылшын. algorіtmіc — 
алгоритмдік және language — тіл) — ЭЕМ-мен 
шығарылатын
есептердің алгоритмін бірмәнді түрде жазуға арналған 
жасанды тіл.   Ол белгілер(символдар) 
жиынтығынан , яғни алгоритмдік тіл алфавитінен, 
 синтаксистік ережелер мен семантикалық 
анықтамалардан құралған. 
  Тілдің алфавиті – тілдің сөйлемдерін жазуда 
пайдаланылатын, тілдің барлық символдарының 
жиынтығы.
  Тілдің синтаксисі – тілдің сөйлемдері мен оның  
құрамдас  бөліктерін құру үшін пайдаланылатын  
ережелер  жиынтығы.
  Тілдің семантикасы – тілдің синтаксисі бойынша  
құралған  оның құрылымын түсіну ережесін  
анықтайды.
   Алгоритмдік тілдің негізгі белгілері латын не орыс 
алфавиттері әріптері , қандай да бір таңбалар  мен шартты 
белгілер болуы мүмкін. 
   Алгоритмдік тілдің құрылымы : сөздер , сөз 
тіркестері (фразалар , сөйлемдер ), кестелер  мен кестелер 
жүйесі  
  Түсіндіру ережелері ЭЕМ-де аппараттармен жүзеге 
асырылатын алгоритмдік тіл машиналық тіл деп аталады. 
  Алгоритмдік тілдің ерекшелігі: табиғи тілден 
бірмәнділігі мен айқындылығы жағынан 
   Есептеу машинасына алгоритмдік тілін 
пайдаланғанда бағдарламалау мен машина жұмысын 
үйлестіретін арнайы бағдарламалаушы —
процессор қолданылады. Ол бағдарламаны енгізу, 
машиналық, синтаксистік, семантикалық талдаулар, 
формальды қателерді   анықтау, бағдарламаны орындау т.б. 
жұмыстарды   атқарады. 
  Алгоритмдік тілдің бірнеше түрі бар. Олардың  
кейбіреулері ғана (Мысалы: алгол, кобол,Фортран,   Паскаль 
т.б.) кең тараған.
Ең алғашқы алгоритмдік тіл 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 фирмасында пайда болды. Бұл тіл қуатты, қиын тіл. Ол жо ғар ғы о қу
орындарында, ғылыми зерттеу орталықтарында қолданылды.
1970ж. Никлаус Вирт Цюрих политехникалық университетінде Паскаль тілін ойлап
тапты. Бұл тіл бағдарламаларды үйренуге жақсы бағытталған және қазіргі заман ғы ЭЕМ-де
әртүрлі есептерді тиімді шешуге мүмкіндік береді.
1973ж. Франциядағы Люммин университетінің Колмероэ және бас қа да ғалымдары
"Пролог” (Prolog-programmation en logique – логикалы қ бағдарламалау)
бағдарламалау тілін ойлап тапты
1980ж. Ада бағдарламалау тілі пайда болды. Бұл тіл ағылшын поэты Лорд
Байронның қызы, есептеуіш техника тарихындағы алғашқы программист Ада
Лавлейс атына берілді. Ада тілі американың қорғаныс министріні ң с ұранысы бойынша
әмбебап бағдарламалау тілі ретінде Францияда құрылды. Ол ең жа ңа, қуатты ба ғдарламалау
тілі болды. Оны Паскаль мен Алгол-68 тілдерінің ортақ қасиеттерінен құр ған және ол қосымша
қаситтерге де ие.
                             Тілдің алфавиті
  Тілдің алфавиті программаның элементтерін құруда 
қолдануға болатын символдар жиынынан тұрады. Оған 
әріптер, цифрлар және арнайы белгілер (символдар) 
  Арифметикалық амал белгілері:
     (+) – қосу;                                (-) –азайту; 
     (*) – көбейту;                          (/) – бөлу.
  DIV –  және (логикалық көбейту) операциясы;
  MOD –  қалдықты табу. Мысалы: 10 MOD 3 амалыны ң нәтижесі 1;
  Логикалық амал белгілері:
AND –  және (логикалық көбейту) операциясы;
OR –  немесе (логикалық қосу) операциясы;
NOT –  емес (терістеу немесе жоққа шығару) операциясы;
XOR –  арифметикалық немесе амалы;
SHL –  биттер (1 мен 0-дер)тіркесін сол ға ығыстыру;
SHR – биттер (1 мен 0-дер)тіркесін о ңға ығыстыру;
Айыру белгілеріне бос орын, барлық басқару символдары, тыныс белгілері, ENTER (келесі жолға к өшу) пернесін басу белгісі ж әне т үсініктемелер жатады.
Сонымен айыру белгілері: ____ (бос орын);  , ( үтір);  . (нүкте);  : ( қос н үкте);  ; (н үктелі  үтір) ;    `  (апостроф); (;); [;] ; {;}.
Қатынас таңбалары немесе салыстыру белгілері: = (те ң),  <>(те ң емес),  < (кіші),  >( үлкен),        <=  (кіші не те ң),  >= ( үлкен не те ң). 
  Программалау тілдерінде «өрнек», «операторлар», «тіл синтаксисі» мен «семантикасы»  ұғымдары ке ң пайдаланады.
Арифметикалық немесе логикалық амалдар та ңбасымен біріктірілген айнымалар атаулар, функциялар, жиымдар т.б. ма ғынасы бар с өздер тізбегі -  өрнек деп аталады. 
  Программалау тілінің белгілі бір іс-әрекетті орындай алатын тияна қты ма ғынасы бар е ң қарапайым с өйлем –  оператор деп аталады.
  Тілі объектілерін, яғни программада ғы пайдаланылатын мәліметтердің  құрылымы мен  ұйымдастырылуын алдын ала аны қтайтын с өйлемдер жиыны - программаны ң сипаттамасы болып 
табылады.
  Синтаксистік диаграммаларда екі геометриялық фигура тіктөртб ұрыш және (кейде д өңгелек) ке ң пайдаланады. Тікт өртб ұрыш ішінде тілді ң аны қталатын элементтер ал эллипс ішінде 
терминалдық символдар, яғни аны қтауды қажет етпейтін та ңбалар жазылады.
    Тіл синтаксисі.Синтаксистік қатені де компьютер бірден ан қытайды.
Тілдің семантикасы .Программа жазудың мағаналық ережелерін тілдің семантикасы дейді. Семантикалы қ  қателерді компьютер аны қтай алмауы м үмкін.
Паскаль тілінде программа жеке жолдардан тұрады. Жол бойында бірнеше оператор жазылса, оларды ң арасы «;» -мен ажыратылады. Бір жолда ғы та ңбалар саны пробелді  қос қанда 256-дан аспауы тиіс. 
  Түрлі ұлттар қарым-қатынас жасайтын табиғи тілден жасанды тілдің 
ерекшелігі – олар жазба мәтіндерді құру үшін қолданылатыны белгілі. Бұндай тілдер 
жасанды тілдерден қида жеңіл болып табылады, себебі бұл тілде көп мағыналық  
пен синоним жоқ,, синтаксис  пен семантика жеңілдетілген, сондай-ақ айтарлықтай 
мәтіндік бағыныңқылық төмендетілген. Жасанды мәтіндердің негізгі қызметі 
-ақпаратты компьютерлер мен басқару құрылғыларына беру.
   Мәтін компьютер немесе басқару құрылғылары орындау қажет тапсырма 
болып табылады. Бұндай тапсырманың мәтінін адам құрғандықтан, кіріс тілі деп 
аталатын мәтінді жазу тілі қолданатын адамдар қолданысына ыңғайлы және 
түсінікті болу керек. Адамға бағытталған тіл әдетте компьютер орындайтын 
команда түрлерімен біртектес болмайды. Компьютерге түсінікті командалар артынан 
кіріс тілінде мәтіннің өзгертілуін орындау үшін транслятор деп аталатын арнайы 
құрылғы немесе бағдарламалар қолданылады. 
  Трансляторды құру тапсырмасы айтарлықтай қиын және жауапты іс. 
Оның шешім қабылдау сапасына  өзгертуді орындауға қажет ресурстар байланысты 
болады. Және бұнымен қатар кіріс тілінде жазылған мәтін мазмұнын дәлме-дәл 
жеткізу трансляторға қойылатын негізгі талап болып табылады. Ондай өзгертулерді 
іске қосу үшін тіл синтаксисі деп аталатын кіріс мәтіндерінің құрылу ережелерінің 
дәлме-дәл суреттелуі мен тіл семантикасы деп аталатын мәтін мазмұнын 
баяндайтын талдау ережелері қажет. 
  Синтаксис пен семантиканы мазмұндау үшін түрлі құралдар 
қолданылады. Осылайша тіл синтаксисін формалдық грамматика, ал семантиканы 
атрибуттық грамматика көмегімен мазмұндауға болады.
  Синтаксисті мазмұндаумен байланысты мәселелер бөлімінде 
алфавит, шынжыр, грамматика, шығару, тіл және т.б. базалық түсініктер 
анықтамалары беріледі. Содан соң формалдық грамматиканың мүмкін 
классификацияларының бірі – Хомс бойынша классификациялау 
қарастырылады. Бұл классификация бағдарламалау тілін тәжірибеде 
мазмұндау үшін қолданылатын грамматика типін көрсетуге мүмкіндік 
береді. Бөлімнің соңында бағдарламалау тілінің кейбір 
конструкцияларына арналған жай грамматикаларды құру мысалдары 
қарастырылады. 
  Формалдық тіл мен грамматиканы анықтауға қажет алғашқы 
және ең жай түсінік болып алфавит пен алфавиттегі сөздер табылады. 
Символдардың бұл қарастыруда бөлінбейтін соңғы жиыны сөздік 
немесе алфавит деп, ал жиынға жататын символдар - алфавит  әріптері 
деп аталады. 
  Мысалы, әрбіреуі екі символдан тұратын                         алфавиті 
5 әріпті құрайды, ал                         алфавиті 4 әріпті  құрайды. 
  Алфавит әріптерінің реті бұл алфавиттегі сөз немесе шынжыр 
деп аталады. Сөздегі әріптер саны  жиынының ұзындығы деп аталады. 
Бос шынжыр – бұл бірді-бір әріпі жоқ шынжыр. Оң жақтан немесе сол 
жақтан  шынжырына кез келген бос шынжырдың қосылуы  шынжырын 
өзгертпейді .
   А алфавитінің символдарынан құрылған барлық мүмкін 
шынжыр жиындарын анықтау үшін  А+ белгісі қолданылады. 
  Объект-тілді  сипаттау үшін метатіл қолданылуы қажет. Бірақ метатіл оъект-тілді ң  құрылымын бірм әнді 
анықтау үшін формальді тілдің бір қатар  қасиеттеріне ие болуы керек,  Б ұдан, метатіл алдымен  өзі сипатталуы  қажет, б ұл 
үшін ден сол сияқты тіл қажет -* әрине, мұндай процессті ң еш қашан бітпейтіндігі туралы ой  қалыптасуы м үмкін. Біра қ 
кез-келген метатілді сипаттау үшін таби ғи тілді қолдану ға болатыны  дәлелденген. Осылайша формальді тілді  құру  үшін 
табиғи тілдің құралдарымен метатілді сипаттау қажет, содан кейін метатіл ар қылы формальді тілді сипаттау  қажет. 
Метатілдерді сипаттаудың екі нұсқасын қарастырайы қ. 
Ең кең тараған метатілдердің бірі - Бекус-Наур нотациялары. Бекуса-Наура формасында с өйлем құру үшін әмбебап 
метасимволар қолданылады: { <, >, ::=, | }. Ал ғаш қы екі метасимволды «б ұрышты қ жа қшалар» деп атайды – олар терминді 
емес сөздерді қоршауға қажет.  «::=» символы «аны қтама бойынша бар» деп о қылады; «»"символы –  «немесе». Бекус-Наура 
 формасында жазылған сөйлемдерде б ұрышты қ жа қшаларда т ұр ған терминалды емес символ объект-тілді ң  құрылымы 
анықтайтын роль атқарады. Бекус-Наур формулаларында әмбебап метасимволдардан айры қша объект-тілді ң алфавитінен 
терминалды символдар қолданыла алады. Формальді тілді ң терминалды символдары ешн әрсемен шектелмейді. 
  Формальді тілдердің сипатталуы формулалар тізбегінен т ұрады, оларды ң  әр қайсысыны ң сол жа ғында 
объект-тілдің қандай-да бір құрылымын бейнелейтін бір метасимвол болады. М ұндай формуланы ң о ң жа ғы немесе 
орбъект-тілдің метасимволдар және терминалды символдар тізімінен (б ұл жерде еш қандай б өлгіштер  қойылмайды), немесе 
 «|» символымен бөлінген тізімдер жина ғынан т ұрады. О ң және сол б өліктері «::=» та ңбасымен бір формула ға бірігеді. 
Егер кез-келген теминальді емес символды теминалды символдар тізбегі ретінде к өрсетуге болатын болса, онда объект-тілді 
толығымен Бекус-Наур формасында анықталған деп есептеуге болады. 
<идентификатор>::=<әріп>|<идентификатор><әріп>|<идентификатор>
<цифр> 
<әріп>::= a|b|c|d|e… 
<цифр>::= 0|1|2|3|…|9
  Мысал ретінде көптеген программалау тілдерінде  қолданылатын  «идентификатор» ұғымын анықтауды 
қарастыруға болады.табиғи тілде анықтама т өмендегідей айтылады:  «Идентификатор – бұл әріптен басталатын әріптер
мен цифрларлың кез-келген тізбегі» . Бекус-Наур формасында оло төмендегідей көрінетін болады: 
  Осы ұғымның анықтамасында рекурсивтілік бар екені к өрінеді, себебі  «идентификатор» ұғымы өзі арқылы 
анықталып тұр. Бір әріптен тұратын идентификатор қарапайым болып табылады.  Бекус-Наур нотацияларыны ң жетістігі 
олардың әріптік түрде көрсетілуі; 
Қорытынды:

  Кез-келген тілдегі мәтінде төрт негізгі элементті бөліп көрсетуге
болады: символдар, сөздер, сөз тіркестері және сөйлемдер. Алгоритмдік тіл де
осындай элементтерден тұрады: символдар, лексемалар, өрнектер, операторлар.
Лексемалар символдардан, өрнектер лексемалардан және символдардан, ал
операторлар символдардан, лексемалардан, өрнектерден тұрады .Символдар-
негізгі бөлінбейтін таңбалар; Лексема- өзіндік мағынасы бар тіл бірлігі;
Өрнек- қандай да бір мәннің есептелу ережесі; Оператор- қандай да бір істі ң
аяқталған сипаттамасы. Алгоритмдік тіл құрамы: Тіл алфавиті: бас және кіші
латын әріптері; 0-ден 9-ға дейінгі араб цифрлары; Арнайы белгілер: [] {} , . ( ) +
- / * \ % ; : ? < > = ! & # ^ “ ' бос орынды символдар: бос орын (пробел),
табуляция символы, жаңа жолға көшу символы Символдардан лексемалар
құралады: идентификаторлар; түйінді сөздер; операция таңбалары;
тұрақтылар; бөлгіштер (жақша, нүкте, үтір, бос орынды символдар).
Идентификаторлар– программалық объектінің аты. Әріп немесе сызық
таңбасы идентификатордың бірінші символы болуы мүмкін, бірақ цифр бола
алмайды. Түйінді сөздер – компилятор үшін арнайы мәні бар резервтелген
идентификаторлар. Операция таңбалары– операндтарға қолда- нылатын бір
немесе бірнеше символдар. Тұрақтылар - өзгермейтін шамалар.
Комментарийлер – компилятор үшін маңызы жоқ программаның бөлігі және
программа мәтінін оқу ыңғайлы болуы үшін қолданылады. Ол // символынан
басталады.
                              Пайдаланылған әдебиеттер

1.  http://reftrend.ru/836751.html
2.Стариченко Б.Е. Теоретические основы
информатики: Учебное пособие для вузов. - 2-е изд.
перераб. и доп. - М.: Горячая линия-Телеком, 2003. -312
с, ил.
3.Информатика: Учебник. - 3-е перераб. изд. /Под. ред.
проф. Н.В. Макаровой. - М.: Финансы и статистика,
2001. - 768 с: ил.
4.Савельев А.Я. Основы информатики: Учеб. для
вузов. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2001 - 328 с,
ил. (Сер. Информатика в техническом университете).
      Назарларыңызға 
      рахмет!!!

Ұқсас жұмыстар
Алгоритмдік тілдің және семантикасы
Алгоритм туралы ақпарат
Алгоритмдік тілдің алфавиті, синтаксисі және семантикасы
Алгоритмдік тілдің алфавиті, синтаксисі және семантикасы. Тілдің синтаксисін синтаксистік
Программалау тілдері
Трансляция түсінігі
Логикалық амал белгілері
Формальды тілдер түсінігі
Трансляция түсінігі. Формальды тілдер түсінігі. Формальды тілді сипаттаудың қатаң тәсілдері және метатіл туралы түсінік
Синтаксис және оның объектілері
Пәндер