Курс тақырыбы Алгоритмдеу және программалау
Сабақтың тақырыбы: Программалау тілдерінің шығу тарихы.
1.Программалаудың түрлері.
2.Құрамылдық, модульдік.
3.функцияналдық, логикалық.
Программалау –хабарларды есептеуіш машиналарыдың көмегімен сұрыптайтын жасанды тілдер тобы. Кез келген компьютер программасының негізгі мақсаты – аппаратты құралдармен басқару.
Алғашқы пайда болған программалау тілдері өте қарапайым болатын. Олардың бұйрықтары компьютерге түсінікті 1 және 0 символдарының тізбектерінен тұратын. Әр бұйрыққа сәйкес машиналық кодтарды жатқа білу программалаушыға қиын болғанымен, машиналық кодтар арқылы жазылған программалар есептеу машинасының жадына көп талап қоймады. Сондықтан олар жүйелік программаларды, драйверлерді және трансляторларды құруға ыңғайлы. ЭЕМ мен адам арасындағы қатынасты жеңілдету үшін ассемблер типті программалар құрылды. Айнымалы шамалар символды аттармен белгіленіп, әр бұйрықтың машиналық коды мнемоникалық белгілеулерге ауыстырылды. Ассемблер тілдері аз да болса адам тіліне ұқсастырылды. ЭЕМ-ді қолдану көпжақты болғандықтан аранйы есептерді шешу үшін түрлі тілдер құрылды. Процедураға бейімделген тілдің мысалы ретінде FORTRAN (Фортран) (50-жылдардың ортасында пайда болған) тілін айтуға болады. Бұл тіл бірінші және кең қолданылатын программалау тілдерінің бірі. Өзінің қарапайымдылығынан және бұл тілде жазылған программалардың көптігінен ол қазіргі күнге дейін қолданылады. Ол инженерлік, ғылыми есептеулер салаларында пайдаланылады.
Есептеуіш математика аумағында программалау жүйесі процедурадан ауыса бастады. Нәтижесінде күрделі программалардың тиімді құрылуы – берілгендердің дұрыс қолдануын бақылау екендігі анықталды. Бақылау компиляция кезеңінде де программаны жүргізу кезінде де жүзеге асырылуы тиіс. Әйтпесе, тәжірбие көрсеткендей күрделі программалық жобаларды құрудың қиыншылықтары артады. Бұл мәселені шешудің нәтижесінде Алгол-60, кейінірек Паскаль, Модуль-2, Си және т.б. программалау тілдері жетілді.
Жалпы барлық программалау тілін берілген сызбадағыдай топтастыруға болады:
Қазіргі кездегі ЭЕМ және олардың жүйелерінің жалпы сәулетінде икемді компонент программалық жасақтама болып табылады.
Программалық жасақтама – белгілі бір типтегі есептеуіш машиналарға арналған, олардың аппараттық құралдарының жан-жақты қызметін, сонымен қатар қолданушының есептеу ресурстарына мұқтаж кез келген есептерін шығаратын программалар жиынтығы.
Компьютердегі программалық жасақтама құрамын программалық конфигурация деп атайды. Программалар арасында физикалық буындар мен блоктар арасындағы сияқты байланыс бар – көптеген программалар өзінен төмен деңгейдегі басқа программаларға сүйеніп жұмыс істейді.
Программалық жасақтама келесі деңгейлерден тұрады: базалық немес негізгі, жүйелік, қызметтік және қолданбалы.
Программалық жасақтаманың деңгейлері пирамидалық жүйе болып табылады. Әрбір келесі деңгей программалық жасақтаманың өзінен бұрынғы деңгейлеріне сүйеніп жұмыс істейді.
Базалық деңгей. Программалық жасақтаманың ең төменгі деңгейі – базалық. Бұл деңгей базалық ақпараттық құрылғылармен байланысуға жауап береді. Ереже бойынша, базалық программалар базалық саймандар құрамына кіреді және тұрақты жадыда сақталады. Программалар және мәліметтер жасау кезеңінде желдел жадыға жазылады және пайдалану үдерісінде өзгертілмейді. Жедел жадының мазмұнын өзгерту, есептеу жүйесінің құрамында тікелей орындауға да болады. Немесе одан тыс программалаушы деп аталатын арнайы құрылымдарда орындауға болады.
Енгізу-шығарудың базалық жүйесі (BIOS) компьютердің тұрақты жадында орналасқан. Бұл негізгі MS DOS-тың бөлігі емес, бірақ бұнымен тор (желі) байланысты. BIOS құрамына компьютер құрылғыларын тексеруге, амалдық жүйені (операциялық жүйе) инициализациялауға және монитор, пернетақта, дискілер, принтермен енгізу-шығару амалдарын орындауға арналған программалар кіреді.
Жүйелік деңгей. Жүйелік деңгей – өтпелі. Бұл деңгейде жұмыс істейтін программалар базалық деңгейдің программалары мен компьютерлік жүйенің өзге де программалары және тікелей аппараттық жасақтамамен өзара әрекеттесуін қамтамасыз етеді. Программалық жасақтаманың бұл деңгейіне көбінде барлық есептеу жүйесінің пайдалану көрсеткіштері тәуелді. Мысалы, жүйелік деңгейде есептеу жүйесіне жаңа жабдық қосқанда басқа программалар үшін осы жабдықпен байланысты қамтамасыз ететін программа орнатылуы тиіс. Нақты құрылғылармен өзара әрекеттесуді қамтамасыз ететін нақты программаны драйвер құрылғысы дейміз. Ол программалық жасақтаманың жүйелік деңгейінің құрамына кіреді.
Жүйелік деңгей программаларының басқасы қолданушымен өзара әрекеттесуге жауап береді. Солардың арқасында ол есептеу жүйесіне мәліметтерді енгізуге, оның жұмысын басқаруға және нәтижесін өзіне ыңғайлы формада алуға мүмкіндік алды. Бұл программалық құралдар интерфейстің пайдаланушылық қамтамасыз ету құралдары деп аталады. Компьютермен жұмыстың ыңғайлылығы мен жұмыс орнындағы еңбек өнімділігі оларға тікелей тәуелді.
Жүйелік деңгейдің программалық қамсыздануының жиынтығы компьютердің амалдық жүйе ядросын құрастырады. Амалдық жүйе ядросының бар болуы – адамның есептеу жүйесі мен тәжірбиелік жұмысының мүмкіндігі үшін міндетті шарт.
Қызметтік деңгей. Программалық жасақтаманың бұл деңгейі базалық деңгейдегі программалармен де, жүйелік деңгейдегі программалармен де тығыз байланыста болады. Қызметтік программалар компьютерлік жүйені тексеру, баптау және жөндеу жұмыстарын автоматтандырады. Сонымен қатар олар жүйелік программалардың қызметін жақсарту және кеңейту үшін қолданылады.
Өңдеуде және қызметтік программаларды пайдалануында екі талғаулы бағыт бар: амалдық жүйемен біріктіру және автономды жұмыс жасау. Бірінші жағдайда қызметтік программалар жүйелік программаның тұтынушылық құрамын тәжірбиелік жұмысқа өте ыңғайлы етіп өзгерте алады. Екінші жағдайда олар жүйелік программалық қамсыздануымен әлсіз байланысқан, бірақ қолданушыға аппараттық және программалық қамсыздануымен олардың өзара әрекеттесуін дербес күйге келтіру үшін көп мүмкіндік береді.
Құрылымдық программалау программалық өнімнің модульдік құрылымына және әртүрлі программалық модульдердің мәліметтерін өңдеу алгоритмдерінің типтік басқару құрылымдарына негізделген.
Құрылымды басқару типтері:
Реттілік;
Альтернативті (таңдау шарты);
Циклдік.
Құрылымдық программалауға жататын программа әзірлеудің екі әдістемесі кең тараған:
«Жоғарыдан төменге» программалау;
«Төменнен жоғарыға» программалау;
Құрылымдық программалау алгоритмдік мінездемесі бар математикалық есептерді шығаруда тиімді қолданылады.
Модульдік программалау – программаны логикалық бөліктерге бөлу үдерісі.
Программа бірнеше модульдерге бөлінеді және мынадай мақсаттар орындалуы тиіс:
Модульдің дұрыс болуы және оның контекстерге тәуелсіз болуы қажет;
Модульдің ішкі жұмыстарын білмей тұрып әртүрлі модульдерден программа құру мүмкіндігінің болуы қажет.
Модуль өлшемі 60 жолдан аспауы керек және модульдер өзара тәуелсіз болуы керек. Байланысқан элементтерді бір модульге, байланыспаған элементтерді әртүрлі модульге жинау керек. Модульдерді қолдана отырып программа күрделігін төмендетуге болады.
Өзара байланысқан негізгі нысандардан тұратын программалау тілін нысанға бағытталған программалау тілі дейміз.
Логикалық программалау тілдері PROLOG және LISP жасанды интеллект проблемаларының есептерін шешуге арналған. LISP тілін 50-інші жылы Д.Макартни символдық информацияларды өңдеуге арнап құрды. LISP тілінің мәліменттерінің негізгі құрылымы тізімдер, тізімнің элементтері атомдар. Lisp тілінің бір ерекшелігі динамикалық жаңа объектілерді құру мүмкіндігі, объект есебінде программаның өзі де қатыса алады.
Программалық жасақтама- белгілі бір типтегі есептеуіш машиналарға арналған, олардың аппараттық құралдарының жан жақты қызметін, сонымен қатар қолданушының есептеу ресурстарына мұқтаж кез келген есептерін шығаратын програмалар жиынтығы.
Программалау- хабарларды есептеуіш машиналардың көмегімен сұрыптайтын жасанды тілдер тобы. Кез келген компьютер програмасының негізгі мақмсаты- ақпаратты құралдармен басқару. Симула-67 тілінен бастап програмалауда нысанды бейімделген деген жаңа әдіс пайда болды.
Программалық жасақтама- белгілі бір типтегі есептеуіш машиналарға арналған, олардың аппараттық құралдарының жан жақты қызметін, сонымен қатар қолданушының есептеу ресурстарына мұқтаж кез келген есептерін шығаратын програмалар жиынтығы.
Компьютердегі программалық жасақтама кұрамын программалық конфигурация деп атайды.
Программалық жасақтама деңгейлері: базалық, негізгі , жүйелі, қызметтік, қолданбалы. Программалық жасақтаманың деңгейлері пирпмидалық жүйе болып табылады.
Амалдық жүйе- құжаттармен амалдар орындауға арналған сыртқы құрылғыларды және програмаларды басқаруды жүзеге асыратын программалар жиынтығы.
Қызметші программалар- әр бір адамның амалдық жүйемен жұмыс істеуін жеңілдететін программалау тобы.
Мәселелік бағытталған қолданбалы программалық жабдықтар- белгілі бір саладағы есептерді жүзеге асыруға мамандандырылған програмалық құралдардын жиынтығы.
Интегралданған ҚПЖ- қазіргі уақыттағы ҚПЖ-ның қарқынды және қуатты дамып жатқан бөлігі.
Достарыңызбен бөлісу: |