Бағдарламалау тілдерінің семантикалық анализ технологиясы
Дипломдар мен сертификаттарды алып үлгеріңіз!
1 слайд
Бағдарламалау
тілдерінің
семантикалық
анализ технологиясы
Бағдарламалау тілінің семантикасы – машинаның еркін түрде
берілген бағдарламаны қандай операциялар арқылы және қандай
реттілікте орындау керектігін анықтауды білдіреді. Бұл технология
бағдарламалау тілдерінің мағынасын түсіну және талдау үшін өте
маңызды. Семантикалық анализ арқылы бағдарламалардың дұрыс
жұмыс істеуін қамтамасыз етуге болады.
GA
by Gani Abdumalik
1 слайд
Бағдарламалау тілдерінің семантикалық анализ технологиясы Бағдарламалау тілінің семантикасы – машинаның еркін түрде берілген бағдарламаны қандай операциялар арқылы және қандай реттілікте орындау керектігін анықтауды білдіреді. Бұл технология бағдарламалау тілдерінің мағынасын түсіну және талдау үшін өте маңызды. Семантикалық анализ арқылы бағдарламалардың дұрыс жұмыс істеуін қамтамасыз етуге болады. GA by Gani Abdumalik
2 слайд
Формальды тілдер
Теориялық тұрғыдан формальды тіл дегеніміз белгілі бір шегі бар
жолдар жиынтығы. Формальды тілдің семантикасын сипаттауда оның
элементтерін қандай да бір модель түрінде көрсету керек, мүмкін
басқа тілдің жолдары түрінде. Формальды тілдердің семантикасын
сипаттау Г.Фрегенің композиция принципы негізінде жасалған, яғни
жеке-жеке семантикалардың құрамы арқылы.
Формальды тіл
Белгілі бір шегі бар жолдар жиынтығы
Семантика сипаттамасы
Элементтерді модель түрінде көрсету
Фреге принципі
Жеке семантикалардың құрамы арқылы сипаттау
2 слайд
Формальды тілдер Теориялық тұрғыдан формальды тіл дегеніміз белгілі бір шегі бар жолдар жиынтығы. Формальды тілдің семантикасын сипаттауда оның элементтерін қандай да бір модель түрінде көрсету керек, мүмкін басқа тілдің жолдары түрінде. Формальды тілдердің семантикасын сипаттау Г.Фрегенің композиция принципы негізінде жасалған, яғни жеке-жеке семантикалардың құрамы арқылы. Формальды тіл Белгілі бір шегі бар жолдар жиынтығы Семантика сипаттамасы Элементтерді модель түрінде көрсету Фреге принципі Жеке семантикалардың құрамы арқылы сипаттау
3 слайд
Синтаксис және семантика
Формальды тілдердің синтаксисы формальды грамматика арқылы беріледі. Семантиканың
формальды анықтамасы бүгінгі күнге дейін анықталмаған, сондықтан нақты қорытынды жоқ.
Формальды тілдердің семантикасын сипаттауда көптеген модельдердің түрлері мен әдістері
құрастырылған.
Синтаксис
Формальды грамматика
арқылы беріледі
Семантика
Формальды анықтамасы әлі
анықталмаған
Модельдер
Көптеген түрлері мен
әдістері бар
3 слайд
Синтаксис және семантика Формальды тілдердің синтаксисы формальды грамматика арқылы беріледі. Семантиканың формальды анықтамасы бүгінгі күнге дейін анықталмаған, сондықтан нақты қорытынды жоқ. Формальды тілдердің семантикасын сипаттауда көптеген модельдердің түрлері мен әдістері құрастырылған. Синтаксис Формальды грамматика арқылы беріледі Семантика Формальды анықтамасы әлі анықталмаған Модельдер Көптеген түрлері мен әдістері бар
4 слайд
Формальды тілдердің семантикасын сипаттау
модельдері
Формальды тілдердің семантикасын сипаттауда үш негізгі модель қолданылады: спецификациялар моделі,
аппликативты модельдер және грамматикалық модельдер. Бұл модельдер тілдің түрлі функциялары арасындағы
қатынастарды, функциялардың қолданылуын және грамматикаға кеңейтілулерді енгізуді сипаттайды.
Спецификациялар моделі Тілдің функциялары арасындағы қатынастар
Аппликативты модельдер Функциялардың қолданылуы
Грамматикалық модельдер Грамматикаға кеңейтілулер
4 слайд
Формальды тілдердің семантикасын сипаттау модельдері Формальды тілдердің семантикасын сипаттауда үш негізгі модель қолданылады: спецификациялар моделі, аппликативты модельдер және грамматикалық модельдер. Бұл модельдер тілдің түрлі функциялары арасындағы қатынастарды, функциялардың қолданылуын және грамматикаға кеңейтілулерді енгізуді сипаттайды. Спецификациялар моделі Тілдің функциялары арасындағы қатынастар Аппликативты модельдер Функциялардың қолданылуы Грамматикалық модельдер Грамматикаға кеңейтілулер
5 слайд
Семантиканы сипаттау
әдістері
Программалау тілдерінің семантикасын сипаттауда үш әдіс кеңінен
тараған: операциялық, аксиоматикалық және денотациялық. Бұл
әдістер әртүрлі тәсілдермен бағдарламалау тілдерінің мағынасын
анықтауға көмектеседі.
1
Операциялық әдіс
Абстрактілі машинаның бір күйден екінші күйге өтуін
сипаттайды
2
Аксиоматикалық әдіс
Программаны құрайтын объектілер жиынтығын қарастырады
3
Денотациялық әдіс
Программаға қатысты абстракциялар функциясын зерттейді
5 слайд
Семантиканы сипаттау әдістері Программалау тілдерінің семантикасын сипаттауда үш әдіс кеңінен тараған: операциялық, аксиоматикалық және денотациялық. Бұл әдістер әртүрлі тәсілдермен бағдарламалау тілдерінің мағынасын анықтауға көмектеседі. 1 Операциялық әдіс Абстрактілі машинаның бір күйден екінші күйге өтуін сипаттайды 2 Аксиоматикалық әдіс Программаны құрайтын объектілер жиынтығын қарастырады 3 Денотациялық әдіс Программаға қатысты абстракциялар функциясын зерттейді
6 слайд
Транслятор түрлері
Транслятор - қандай да бір программалау тілінде жазылған программалары
объектілі тілде бейнеленген жұмыс істейтін программаға айналдыратын арнайы
программа. Қазіргі уақытта трансляторлар негізгі 3 топқа бөлінеді: ассемблер,
компилятор және интерпретатор.
Ассемблер
Символдық құрылымды машиналық тілге айналдырады
Компилятор
Жоғары деңгейлі тілді машиналық тілге аударады
Интерпретатор
Программаны оператор бойынша орындайды
6 слайд
Транслятор түрлері Транслятор - қандай да бір программалау тілінде жазылған программалары объектілі тілде бейнеленген жұмыс істейтін программаға айналдыратын арнайы программа. Қазіргі уақытта трансляторлар негізгі 3 топқа бөлінеді: ассемблер, компилятор және интерпретатор. Ассемблер Символдық құрылымды машиналық тілге айналдырады Компилятор Жоғары деңгейлі тілді машиналық тілге аударады Интерпретатор Программаны оператор бойынша орындайды
7 слайд
Ассемблер
Ассемблер – символдық құрылымды машиналық тілдің
командаларына айналдыратын (жүйелік) қызмет көрсетуші жүйелік
программа. Ассемблердің ерекшелігі символдық бір команданы
машиналық бір командаға трансляциялайды. Ассемблер тілі
(автокод деп атайды) жүйенің компьютердің командаларын
қабылдауын жеңілдетуге және осы командалар жүйесінде
программаларды жеңілдетуге арналған.
1
Символдық құрылым
Машиналық тілге айналдырады
2
Бір-біріне сәйкестік
Бір символдық команда бір машиналық командаға айналады
3
Автокод
Компьютер командаларын жеңілдетеді
7 слайд
Ассемблер Ассемблер – символдық құрылымды машиналық тілдің командаларына айналдыратын (жүйелік) қызмет көрсетуші жүйелік программа. Ассемблердің ерекшелігі символдық бір команданы машиналық бір командаға трансляциялайды. Ассемблер тілі (автокод деп атайды) жүйенің компьютердің командаларын қабылдауын жеңілдетуге және осы командалар жүйесінде программаларды жеңілдетуге арналған. 1 Символдық құрылым Машиналық тілге айналдырады 2 Бір-біріне сәйкестік Бір символдық команда бір машиналық командаға айналады 3 Автокод Компьютер командаларын жеңілдетеді
8 слайд
Компилятор
Компилятор – программалау тілдерінің бірінде жазылған программаны
машиналық тілдегі программаға трансляциялауды орындайтын қызмет
көрсетуші программа. Ассемблер сияқты программаның бір тілден екінші тілге
айналдыруды қамтамасыз етеді. Берілген тілдің командаларының машиналық
тілдің командаларынан әжептеуір айырмашылығы бар. Мысалы: кейбір
тілдердің бір командасы машиналық тілдің 7-10 командасына сәйкес келеді.
Жоғары деңгейлі тіл
Бастапқы код
Компиляция
Трансляция процесі
Машиналық код
Орындалатын программа
8 слайд
Компилятор Компилятор – программалау тілдерінің бірінде жазылған программаны машиналық тілдегі программаға трансляциялауды орындайтын қызмет көрсетуші программа. Ассемблер сияқты программаның бір тілден екінші тілге айналдыруды қамтамасыз етеді. Берілген тілдің командаларының машиналық тілдің командаларынан әжептеуір айырмашылығы бар. Мысалы: кейбір тілдердің бір командасы машиналық тілдің 7-10 командасына сәйкес келеді. Жоғары деңгейлі тіл Бастапқы код Компиляция Трансляция процесі Машиналық код Орындалатын программа
9 слайд
Интерпретатор
Интерпретатор – берілген программаны әрбір оператор бойынша трансляциялайтын және орындайтын арнайы программа
немесе құрылғы. Компилятор сияқты программаны машиналық тілге айналдырмайды. Берілген тілдің командасын қабылдаған
соң орындайды. Интерпритатордың кемшілігі программаны орындау жылдамдығының төмендігі. Интерпретаторды
пайдаланатын программалар машиналық тілде жазылған программаға қарағанда 50-100 есе баяу орындалады.
Оператор бойынша орындау
Интерпретатор әр команданы бірден орындайды
Жылдамдық айырмашылығы
Интерпретатор компиляторға қарағанда баяу жұмыс істейді
9 слайд
Интерпретатор Интерпретатор – берілген программаны әрбір оператор бойынша трансляциялайтын және орындайтын арнайы программа немесе құрылғы. Компилятор сияқты программаны машиналық тілге айналдырмайды. Берілген тілдің командасын қабылдаған соң орындайды. Интерпритатордың кемшілігі программаны орындау жылдамдығының төмендігі. Интерпретаторды пайдаланатын программалар машиналық тілде жазылған программаға қарағанда 50-100 есе баяу орындалады. Оператор бойынша орындау Интерпретатор әр команданы бірден орындайды Жылдамдық айырмашылығы Интерпретатор компиляторға қарағанда баяу жұмыс істейді
10 слайд
Программалау тілдерінің
ерекшеліктері
Программалау тілдерінде алдын-ала сипатталатын берілгендердің
типтері қолданылады. Себебі, программалау алгоритмдерді кодтауға
емес берілгендер мен кластардың мұқият ойластырылған құрылымына
сүйенеді. Мұндай тілдерден трансляциялау процесі компиляция деп, ал
берілген тілдер жоғары программалау тілдері деп аталады.
Берілгендер типтері
Алдын-ала сипатталады
Құрылымдық тәсіл
Берілгендер мен кластардың құрылымына негізделген
Компиляция
Жоғары деңгейлі тілдерден трансляциялау процесі
10 слайд
Программалау тілдерінің ерекшеліктері Программалау тілдерінде алдын-ала сипатталатын берілгендердің типтері қолданылады. Себебі, программалау алгоритмдерді кодтауға емес берілгендер мен кластардың мұқият ойластырылған құрылымына сүйенеді. Мұндай тілдерден трансляциялау процесі компиляция деп, ал берілген тілдер жоғары программалау тілдері деп аталады. Берілгендер типтері Алдын-ала сипатталады Құрылымдық тәсіл Берілгендер мен кластардың құрылымына негізделген Компиляция Жоғары деңгейлі тілдерден трансляциялау процесі