Жоғары деңгейлі программалау тілі

Автор: Пользователь скрыл имя, 27 Октября 2013 в 13:57, реферат

Описание работы

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

Содержание

Кіріспе………………………………………………………….…………………..
1 Программалау технологиялары туралы түсінік. С/С++ тілдеріне кіріспе…
1.1 Программалау тілдері. Программалау тілдерінің жіктемесі……………..
1.2. Программалау технологиялары……………………………………………..
1.3 С\С++ программалау тілдерінің тарихына қысқаша шолу……………….
2 С/С++ тілдерінің элементтері. Тұрақтылар....................................................
2.1. Тілдің элементтері.......................................................................................
2.2. С/С++ тіліндегі типтер................................................................................
2.3 Тұрақтылар...................................................................................................
2.4. Глобалды және жергілікті айнымалылар...................................................
3 С тіліндегі енгізу-шығару мүмкіндіктері........................................................
3.1. С тіліндегі енгізу-шығару құралдары.......................................................
3.2. С++ тіліндегі енгізу-шығару құралдары..................................................
3.3. С тілінде форматтап енгізу және шығару...................................................
3.4. С++-тегі форматтау функциялары мен флагтар.......................................

Работа содержит 1 файл

Жоғары деңгейлі программалау тілі.doc

— 75.50 Кб (Скачать)

 

 

Кіріспе………………………………………………………….………………….. 
 
1 Программалау технологиялары туралы түсінік. С/С++ тілдеріне кіріспе… 
1.1 Программалау тілдері. Программалау тілдерінің жіктемесі…………….. 
1.2. Программалау технологиялары…………………………………………….. 
1.3 С\С++ программалау тілдерінің тарихына қысқаша шолу………………. 
 
2 С/С++ тілдерінің элементтері. Тұрақтылар.................................................... 
2.1. Тілдің элементтері....................................................................................... 
2.2. С/С++ тіліндегі типтер................................................................................ 
2.3 Тұрақтылар................................................................................................... 
2.4. Глобалды және жергілікті айнымалылар...................................................

 
3 С тіліндегі енгізу-шығару мүмкіндіктері........................................................ 
3.1. С тіліндегі енгізу-шығару құралдары....................................................... 
3.2. С++ тіліндегі енгізу-шығару құралдары.................................................. 
3.3. С тілінде форматтап енгізу және шығару................................................... 
3.4. С++-тегі форматтау функциялары мен флагтар.......................................

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Программалау тілдері 

Программаларды  жасауда қазіргі заманғы компьютерлерде әр түрлі деңгейдегі программалау тілдері  пайдаланылады. 
Жалпы жағдайда тіл деп информацияның жазылыуын және оның түрленуін белгілі ережелер бойынша формальдыетіп беруші құралдарды түсінеміз.

Тілдің  құрамында информацияның негізгі  элементтерін құрудың құралдары  және осы элементтерден әр түрлі  мазмұнды құрылымдар құруға арналған ережелер жүйесі бар.

Программалау тілі деп деректерді жазуға және оларды белгілі ережелер бойынша өңдеуге арналған адам мен компьютерді байланыстыратын формальды тілді айтамыз.

Програмалаудың әр түрлі тілдерін пайдалану. 
Әр түрлі белгілер бойынша жіктеуге болатын бірнеше жүздеген программалау тілдері бар. Ең жалпысы тілдің машинаға жақындық дәрежесі бойынша жіктеу болып табылады. Осы белгісі бойынша программалау тілдері екі үлкен топқа бөлінеді:

  • машинаға тәуелді тілдер;
  • машинаға тәуелсіз тілдер;

Машинаға  тәуелді тілдер өз кезегінде былай  бөлінеді:

  • машина тілі;
  • машинаға бағдарланған тілдер;

Машинаға  бағдарланған тілдер кейде автокодтар деп те аталады. Машинаға бағдарланған тілдердің екі деңгейі бар:

  • символдық кодтау тілдері, басқаша айтқанда мнемокодтар;
  • макротілдер.

Макротілдер машина тілінің командаларына тікелей  ұқсастығы жоқ макрокомандалардыпайдалануға рұхсат етеді. Макрокомандаларды пайдалану программаны қысқартады әрі тілді жасау құралдарының жиынын кеңейте отырып программалаушының еңбегінің өнімділігін арттырады.

Машинаға тәуелсіз тілдер программаларды бөлшектеу дәрежесіне қарай екі топқа бөлінеді:

  • процедулалы- бағдарланған тілдер;
  • проблемалы – бағдарланған тілдер

Процедулалы – бағдарланған тілдер есепті шешу алгоритмін сипаттауға арналған, сондықтан да оларды кейде алгоритмдік тілдер деп те атайды. Алгоритмдік тіл деген ұғым программалау тілі деген ұғыммен сәйкес елмейді. Егер алгоритмдік тілде жазылған алгоритмдік жазу компьютерге ендіруге тікелей жарамды және дайын жұмысшы программаға түрленетін болса, онда мұндай алгоритмдік тіл программалау тілі де бола алады. Кейбір алгоритмдік тілдер тек оларға кейбір құралдарды қосқаннан кейін ғана программалау тілі болады.

Проблемалы – бағдарланған тілдер есептерді сипаттау үшін қызмет атқарады. 
Бірақ алгоритмдік тілдер өздігінен барлық проблеманы, тіптен программаны да шеше алмайды. Мұндай тілде жазылған программа компьютерде тікелей орындалмайды, ол орындалу үшін алдын ала сол компьютердің машина тіліне аудару жеткілікті қиын мәселе болып табылады.

Алгоритмдік тілден программаны машина тіліне аудару жұмысын компьютердің әмбебаптығын пайдаланып, оның өзіне жүктеуге болады. Бұл үшін әрбір алгоритмдік тілден машина тіліне формальды аударуға яғни аударудың ережесін алгоритм түрінде тұжырымдауға мүмкіндік беретіндей болуы керек. Егер, осы алгоритмді бір рет машиналық программа түріне келтіріп алсақ, онда одан кейін осы программаның көмегімен компьютердің өзі берілген алгоритмдік тілде жазылған кез келген программаны нақтылы компьютердің машина тіліне аударып бере алады. Мұндай арнайы аудармашы-программа жоғарыда айтқанымыздай транслятор деп аталады.

Машина тілі 
Компьютердің ақпараттық бөлігі тікелей түсінетін жалғыз тіл: ол – машина тілі. 
Машина тілі деп копьютердің құрамындағы процессор командаларының кодын айтамыз. 
Архитектурасы әртүрлі процессорлардың машина тілдері де түрліше болады. Тек өзара үйлестірілген процессорларда ғана машина тілдері бірдей болады. Мұндай процессорлардың командалар жүйесі төменнен жоғары қарай үйлесімділікте болады деп айтылады. 
Сонымен әрбір компьютердің өзінің машина тілі болады және ол тек осы тілде жазылған программаларды ғана тікелей орындай алады.

Машина  тілінде программалау деп программаға  енетін командалардың реальды кодтарын тікелей жазуды айтамыз.

Командалардың кодтары әр түрлі санақ жүйелерінде  берілуі мүмкін:

  • екілік;
  • сегіздік;
  • он алтылық;

Мысалы, процессордың А аккумляторының ішіндегісін  В регистіріне жөнелту дегенді  білдіретін МОV В,А командасының кодын  әр түрлі санақ жүйелерінде былай  жазып көрсетуге болады:

Санақ жүйелері Коды

Екілік 010001111

Сегіздік 107

Он алтылық 47

Келтірілген мысалдан көрініп тұрғандай команда он алтылық санақ жүйесінде ең ықшамды түрде жазылған. 
Машина кодтарын пайдаланып программалау үшін қарапайым жағдайда қағаз, қалам және информацияны тасымалдаушыға машина кодындағы программаны жазуға арналған перфоратор болса жеткілікті. Командалардың он алтылық кодтары пернетақтадан компьютердің жадына ендіріледі, монитор программаны түзету процесін басқарады, ал экран командалардың коды мен деректерді он алтылық кодта бейнелеп көрсетеді. Машина кодын пайдаланып программалауда еңбек өнімділігін артыру үшін командалардың мнемоникасын және коды берілген анықтамалық кестелерді пайдалануға болады. 
Бірақ қазіргі кезде машина тілінде программалау тек қысқа программаларға шамалы өзгерістер өндіру қажет болған жағдайларда ғана қолданылады, өйткені бұл программа жасаушылар кездесетін мынадай қиыншылықтарға байланысты:

  • процессор командаларының көптеген кодтарын есте сақтауға тура келеді;
  • жадтың абсолюттік адрестері, әсіресе шартты өтулердің саны көп, сондықтан ұзын программалар жасауда қадағалау өте қиын;
  • жазылған программаны қайта жетілдіріп, өзгертіп жасау өте күрделі жұмыс болады;
  • машина кодтарында жазылған программалар өте қиын оқылады;
  • тек қана сандардан тұратын программаны жасау программана жасаушыны жалықтырып жібереді және программаларда қателіктердің келуіне алып келеді.

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

 

 

 

 

 

Программалау  технологиялары

 

 

Программалау процесін жақсартатын және кең қолданылатын әдістердің бірі – құрылымдық программалау. Құрылымдық программалаудың 3 бөлігі (құраушысы) бар:

  1. Модульдік программалау
  2. Құрылымдық кодтау
  3. Жоғарыдан төменге қарай жобалау

Модульдік программалау дегеніміз – программаны логикалық  бөліктерге бөлу процесі. Программа  бірнеше модульдерге бөлінеді және мына 2 мақсат орындалуы тиіс:

  1. модулдің дұрыс болуы және оның контекстерден тәуелсіз болуы қажет;
  2. модулдің ішкі жұмыстарын білмей тұра әр түрлі модулдерден программа құру мүмкіндігінің болуы қажет.

Мысал ретінде стандарт математикалық функциялардың есептелу программасын қарастыруға болады. Программист sin(x) функциясын программаның кез-келген жерінде қолдана алады және оған функцияның есептелуіне қай әдістің қолданып тұрғанын білудің қажеттілігі жоқ. Модуль өлшемі 60 жолдан аспауы керек және модульдер өзара тәуелсіз болуы керек. Байланысқан элементтерді бір модульге, байланыспаған элементтерді әр түрлі модульге жинау керек. Модульдерді қолдана отырып программа күрделілігін төмендетуге болады.

Pascal тілінде модуль процедуралар мен функциялардың көмегімен құрылады, Cи тілінде функциялардың көмегімен құрылады.

Құрылымдық  кодтау деп программада басқарушы конструкциялардың–шартты операторлардың, циклдің (параметрлі, цикл-әзір, цикл-дейін) қолданылуын айтады. Шартсыз көшу операторы программада сирек қолданылуы керек немесе шартты оператордың, циклдің көмегімен өзгертілуі керек.

Программаны жоғарыдан төмен қарай жобалаудың өз иерархиялық құрылымы бар және қысқа есеп қойылымынан басталады. Одан кейін есеп бірнеше ұсақ ішкі есептерге бөлінеді. Ішкі есептердің өзі де ішкі есептерге бөлінуі мүмкін. Әр қадамда ішкі есептің орындайтын негізгі функциялары анықталуы керек. Бөлу процесі әр ішкі есеп қарапайым болғанға дейін, яғни әр ішкі есепке бір модуль сәйкес келгенше созылады.

 

 

Объекті-бағытталған  программалау

 

 

Объекті-бағытталған  программалау тілдерінің негізгі концепциясы– құрылатын қосымша өзара байланысқан негізгі объектілерден тұрады. Объекті-бағытталған технологияда қолданушы үш базалық элементпен: объектілер, хабар және класстармен жұмыс істейді. 

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

Объектілердің өзара  байланысуына хабарлар қолданылады  және үш бөлімнен тұрады: объект идентификаторы, ағымдағы объектіде қолданылатын әдіс аттары және таңдалған әдіс режимін  қалпына келтіретін қосымша информациялар. Күрделі программалар бірнеше біртипті объектілерді қолдануы мүмкін. Бұл жағдайда әр объект үшін әдістер мен айнымалылар туралы информацияны жазу тиімсіз. Бұл мақсатқа объектілер класы деген түсінік енгізілген. Класс дегеніміз біртипті объектілерге арналған шаблон және объектілі айнымалылар типтері мен әдістерін анықтайтын информациялардан тұрады.

Объекті-бағытталған  технологияға негізделген программалау тілдері: SmallTalk/v, Object  Pascal, ACT++, C++, Simula, Actor, Classic–Aga және т.б.

Объекті-бағытталған программалаудың негізгі үш принципі бар: инкапсуляция, тұқымқуалау,  полиморфизм.

 

 

Логикалық программалау

 

 

Логикалық программалау тілдері PROLOG және LISP жасанды интеллект проблемаларының есептерін шешуге арналған. LISP тілін 50-інші жылы Д.Макартни символдық информацияларды өңдеуге арнап құрды. LISP тілінің мәліменттерінің негізгі құрылымы тізімдер, тізімнің элементтері атомдар. Lisp тілінің бір ерекшелігі динамикалық жаңа объектілерді құру мүмкіндігі, объект есебінде программаның өзі де қатыса алады.

LISP тілі және оның модификациялары символды өңдеуге арналған бағытталған программалық бөлімді құруға кең қолданады және қазіргі кезде көптеген тиімді компиляторлары бар.

70-жылдары Lisp тілінің негізінде құрылған Prolog тілі логикалық программалау тілі болып табылады. Prolog программасының негізгі элементі атом болып табылады және жеке объектілер арасындағы қарапайым қатынастарды көрсетеді, басқа программалау тілдеріне қарағанда атом түсінігінің мағыналық мәні басқа. Тіл тек сипаттамадан тұрады және инструкциялары жоқ, яғни процедуралы емес. Әр Prolog программа сөйлемдер жиынынан тұрады, яғни жәй тұжырымдар немесе импликациялар. Prolog тілінің базасында эксперттік жүйелер, білімді көрсететін жүйелер, білім базасы және жаратылыс тілдерін өңдейтін жүйелер құрылады. Prolog тілінің негізіне математикалық логика элементтері қолданылады. Программа объектілер арасындағы қатынас терминдері арқылы сипатталады. Логикалық программалау тілдерінің жетістігі параллель программалау принципі қолданылады. Prolog тілінің көптеген танымал модификациялары бар, оның ішінде ең көп тарағаны – Borland фирмасының Turbo Prolog программалау жүйесі. Жасанды интеллект проблемасына арналған жаңа логикалық және функционалды программалау тілдері құрылуда, мысалы, DURAL, VALID тілдері.

 


Информация о работе Жоғары деңгейлі программалау тілі