Таќырыбы: Программалау тілдерініњ сипаттары мен жіктелуі (жалғасы)
-
Операциялық жүйе программалары және жоғары деңгейлі тілдер
-
Программалау тілдерінің моделі бойынша жіктелуі
-
-
-
-
-
VI.-СУРЕТ. Процедуралыќ программалау тілдердіњ даму таихы.
М±нда ќатањ баѓыттамамен кµп єсер ететіндікті, ал жіњішке баѓыттамамен аз єсер еткендікті белгіленген. Осыѓан сєйкес, рпоцедуралыќтілдіњ дамуыныњ басымшылыѓы АЛГОЛ тілініњ концепцияѓа негізделгендігін байќауѓа болады.
Жалпы, процедуралыќ тілде алгоритм єрекеттерді жєне оларды орындау ‰шін ќажет н±сќауларды бейнелеу арќылы жазылады. Процедуралыќ тілдердегі программа бір лік оператор деп аталынады. Ењ кіші программалыќ бір лік болып меншіктеу операторы есептелінеді. Он, жалпы т‰рде, былай бейнелеуге болады:
айнымалы µрнек,
м±нда “ “ – меншіктеу амалыныњ белгісі, ол єр программалау тілінде єр т‰рлі белгімен берілуі м‰мкін, мысалы, “=”-ФОРТРАН жєне Пейсик тілдерінде, “:=”-АЛГОЛ жєне Паскаль тілінде. Меншіктеу операторыныњ орындалу екі этапта µтеді: алдымен µрнектіњ мєні есептелінеді, содан кейін осы есептелінген мєн айнымалыѓа меншіктеледі. Єрбір программалау тілінде кездесетін деректерді Тенгізу операторы жєне шыѓару операторы меншіктеу операторыныњ дербесжаѓдайлары ьолады. Деректерді енгізген екзде айнымалы ретінде комьпютер жедел жадынадаѓы адрес, ал µрнек ретінде сыртќы ќ±рылѓыныњ аты немесе сыртќы ќ±рылѓыныњ жадындаѓы адрес алынады, ал деректерді шыѓарѓан керісінше болады: айнымалы- сыртќы ќ±рылѓы немесе жадыѓа, µрнек- жедел жадыѓа сєйкес ќ±рылады:
Процедуралыќ тілдерінде басќа программалыќ бірліктерге тізбектеу операторы, тармаќталу операторлары жєне ќайталау операторлары сияќтылар жатады.
Функционалдыќ программалау функционалдыќ тіл дер арќылы ж‰зеге асады. Б±л тілде алгоритм функцияларыды бейнелеу арќылы жазылады. Функциялар ќарапайым функція немесе к‰рделі функція болуы м‰мкін. К‰рделі функция ќарапайым функциялардыњ композициясынан (суперпозициясынан) т±рады. Функционалдыќ тідерде программа бірлігі ретінде функція ќабылданады. Осы тілдердіњ мысалы ретінде ЛИСП, ПЛЭНЕР, CONNIVER, KRL, FRL, жєне FP сияќты тілдерді алуѓа болады.
Логикалыќ тілде алгоритм шыѓарылатын есептіњ алѓашќы деректерініњ жєне оларда орындалатын амалдардыњ ќасиеттері мен ќатынастары туралы ќ±рылѓан т±жырымдарды логикалыќ береже депр ќарастыруѓа болады жєне єрбір береже белгілі бір шартты береді. Есептіњ нєтидесі с±рау арќылы аныќталады. Егер осы с±рау бойынша логикалыќ ережелердіњ орындалѓанын дєлелдесек, онда есептіњ нєтижесініњ болѓаны, єйтпесе не басќа с±рау ќою керек, не ќойѓан с±рауѓа теріс жауап алѓанымыз. Осыны ж‰зеге асару ‰шін осы тілде белгілі бір формальды дедукциялыќ ж‰йені ќолданады. Кейінгі кезде логикалыќ тіл дер µте ќауырт дамуда. Себебі, ло есептегіш техниканыњ5-буынында негізгі машиналыќ тіл ретінде ќабылданбаќшы. М±ндай тілдерге мысал ретінде ПРОЛОГ, ЛОГО сияќтыларды алуѓа болады.
Продукциялыќ (алмастырымдыќ) тілде алгоритм алмастыру ережелерін кескіндеу арќылы жазылады. Алмастыру ережелері “сол жаѓы” жєне “оњ жаѓы” деп аталатын екі бµліктен т±рады. Ереженіњ сол жаѓында осы ереженіњ атауы жєне алѓашќы деректердіњ ‰лгілері орналасады, ал оњ жаѓында ‰лгілерге сєйкес келген алѓашќы деректермен не істеу керектігі кµрсетіледі. Б±л ‰шін басќа ережелерді шыѓаруѓа болады. Ал ережелерді ќ±ру “жоѓарыдан тµмен” алдымен берілген есептіњ жалпы маз±нына сєйкес алмастыру ережесі ќ±рылады. Сонан кейін осы есепті шешу кезінде пайда болван жаѓа ±ѓымдарѓа сєйкес алмастыру ережелері ќ±рылады. Яѓни, б±л тілдегі программаныњ ќ±рылымы иерархиялыќ (б±таќ тєрєздес) болады. Оныњ кез келген дењгейінде тексеруге немесе µзгерістер енгізуге болады. Осындай тілдердіњ мысалы ретінде СНОБОЛ немесе РЕФАЛ сияќты тілі алуѓа болады.
Достарыңызбен бөлісу: |