Реферат Тақырыбы: С++ тілінің құрылымы Дайындаған: Хамзаева К. А қабылдаған: Сермаханов Р. Н тобы: ет9-10г



бет2/12
Дата13.02.2023
өлшемі416,17 Kb.
#168607
түріРеферат
1   2   3   4   5   6   7   8   9   ...   12
Байланысты:
c

Тілдің құрамы
Кез келген табиғи тілдегі мəтінде 4 негізгі элементті бөліп қарастыруға болады, олар: символдар, сөздер, сөз тіркестері жəне сөйлемдер. Осындай элементтер алгоритмдік тілде де бар, алайда мұнда сөздерді лексемалар (элементар конструкциялар), сөз тіркестерін өрнектер, ал сөйлемдерді операторлар деп атайды. Лексемалар символдардан, өрнектер лексемалар мен символдардан, ал операторлар символдар, өрнектер жəне лексемалардан құралады
(1.1-сурет):

  • Тіл алфавиті немесе символдары – бұл тілдегі барлық мəтіндер жазылатын, ары қарай бөлінбейтін негізгі таңбалар;

  • Лексема немесе элементар конструкция – өзіндік мағынасы бар тілдің ең кіші бірлігі;

  • Өрнек белгілі бір мəннің есептелу ережесін береді;

  • Оператор кез келген бір əрекеттің аяқталған спатталуын береді.


Күрделі іс-əрекетті бейнелеу үшін операторлар тізбегі қажет. Операторлар
құрама оператор немесе блок түрінде бірігуі мүмкін. Мұндайда олар бір оператор ретінде қарастырылады.
Операторлар орындалатын жəне орындалмайтын болып бөлінеді. Орындалатын операторлар мəліметтермен атқарылатын əрекеттерді білдіреді. Орындалмайтын операторлар мəліметтерді сипаттау үшін қажет, сондықтан
оларды көбінесе сипаттау операторлары немесе жай ғана сипаттауыштар
деп те атайды.
Тілдің əрбір элементі синтаксис жəне семантика арқылы анықталады.
Синтаксистік анықтаулар тіл элементтерінің құрылу ережесін білдіреді, ал семантика олардың мағынасы мен қолданылу ережелерін анықтайды.
4
Біртұтас алгоритммен біріктірілген сипаттаулар жиыны мен операторлар алгоритмдік тілдің программасы болып табылады. Программаны орындау үшін, оны процессорға түсінікті машиналық кодқа аудару керек. Бұл процесс бірнеше сатылардан тұрады. 1.2-суретте осы сатылар С++ тілі үшін көрсетілген. Программа алдымен препроцессорға беріледі, ол мəтін құрамындағы директиваларды (мысалы, мəтінге тақырыптық файлдарды – программада қолданылатын элементтердің сипаттамасы сақталған мəтіндік файлдарды қосуды) орындайды.
Алынған программаның толық мəтіні компилятордың кіру нүктесіне
беріледі де, компилятор лексемаларды тауып алып, тіл грамматикасының
негізінде, осы лексемалардан тұратын өрнектер мен операторларды анықтайды. Сонымен қатар, компилятор синтаксистік қателерді табады, егер олар жоқ болса, объектілік модуль құрады.
Жинақтауыш (компоновщик) немесе байланыстар редакторы бір объектілік
модульге басқа объектілік модульдерді жəне де кез келген программада болатын (мысалы, экранға мəлімет шығаруды жүзеге асыру үшін) кітапхана функцияларын қамтитын модульдерді біріктіре отырып, программаның орындалатын модулін қалыптастырады. Егер программа бірнеше бастапқы файлдардан құралатын болса, олар жеке-жеке түрлендіріліп, осы жинақтау сатысында біріктіріледі. Осының нəтижесінде шығатын атқарылатын модульдің кеңейтілуі .exe болады жəне ол əдеттегі тəсілмен орындауға жіберіледі.
Құжаттамаларда, кітаптарда тіл ережелерін сипаттау үшін көбінесе бір формальді метатіл қолданылады, мысалы, Бэкус-Наур формулалары немесе синтаксистік диаграммалар. Бұл кітапта баяндау тілінің қарапайымдылығы мен көрнекілігін сақтау үшін кең таралған сипаттаудың формальді емес түрі қолданылған, мұнда синтаксистік конструкциялардың міндетті түрде қажет етілмейтін бөліктері тік жақшаға алынады да, белгілі бір нақты мəнмен ауыстырылуы тиіс мəтін қазақ тілінде жазылған, ал бірнеше элементтің бірін таңдап алу шарты вертикаль сызықпен белгіленген. Мысалы, [ void | int ] атауы(); түріндегі жазба C++ тілінің ережелеріне сəйкес атауы конструкциясының орнына нақты бір басқа ат қойылуы тиіс екенін, ал оның алдында void немесе int сөздерінің бірі болуы немесе ешбір түйінді сөз болмауы мүмкін екендігін білдіреді. Жүйелі жақшалар бірнеше элементтің ішінен біреуі ғана таңдап алынуы тиіс элементтерді топтастырады. Ал тік жақшалардың өздері синтаксистік элемент ретінде қарастырылатын жағдайда ол ерекше түрде айтылады.




Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   12




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет