Физика - математика факультеті
Ақпараттық технологиялар кафедрасы
БЕКІТЕМІН
әлеуметтік және студенттік сұрақтар бойынша проректор, п.ғ.д, профессор
М.Ж.Мальтекбасов ______________
«_____»_________________2015 ж.
Ассемблер тілінің негіздері
пәнінің
ОҚУ - ӘДІСТЕМЕЛІК КЕШЕНІ
Мамандықтар: 5B011100 – Информатика, 5B060200 – Информатика,
5B070300 – Ақпараттық жүйелер
Оқу формасы: күндізгі
Талдықорған 2015ж
Оқу- әдістемелік кешенді оқу бағдарламасына сәйкес 5B011100 Информатика, 5B060200 – Информатика, 5B070300 – Ақпараттық жүйелер мамандықтарына аға оқытушы К. Н. Нуриденова кұрастырған
____________________________
(оқытушының қолы)
«» 2015 ж. № хаттама
Кафедра меңгерушісі___________ п.ғ.к., доцент А.О.Алдабергенова
Физика-математика факультетінің әдістемелік бюросыда құпталған.
«_____»______2015 ж. №______ хаттама
Әдістемелік бюроның төрайымы ___________С.С.Сламжанова.
І.Жансүгіров атындағы Жетісу мемлекеттік университеті | СМЖ ЖМУ И/ПОБҚ.09-2015 3 басылым | ||||
САПА МЕНЕДЖМЕНТ ЖҮЙЕСІ | |||||
Оқу жұмыс бағдарламасы | Ф.4.09-26 | ||||
27.05.15 ж. |
БЕКІТЕМІН әлеуметтік және студенттік сұрақтар бойынша проректор, п.ғ.д, профессор ________________ М.Ж.Мальтекбасов «_____»_________________2015 ж. |
5В070300-Ақпараттық жүйелер, B5060200-Информатика,
5B011100-Информатика мамандықтары бойынша
Ассемблерде программалау негіздеріпәнінің
ОҚУ ЖҰМЫС БАҒДАРЛАМАСЫ
______ 3 _______
(кредит саны)
Талдықорған 2015ж.
Оқу жұмыс бағдарламасы ақпараттық технологиялар кафедрасының отырысында қарастырылды және 5В070300-Ақпараттық жүйелер, 5В060200-Информатика, 5В011100-Информатика мамандықтары бойынша оқу үрдісіне енгізілуіне ұсынылды
Хаттама №______ «___»_______________ 2015ж.
Кафедра меңгерушісі _____________А.О. Алдабргенова
(қолы,аты-жөні, тегі)
Оқу бағдарламасы математика және жаратылыстану факультеттің
әдістемелік бюросында қарастырылды және бекітуге ұсынылды.
Хаттама №______ «___»_______________ 2015ж.
ФӘБ төрайымы __________________ С.С.Сламжанова.
(қолы,аты-жөні, тегі)
Факультет деканы _________________ Ғ.Т.Қыдырбаева
(қолы,аты-жөні, тегі)
ТҮСІНІКТЕМЕ
Ассемблер тілін білу программалауды үйренумен қатар ЭЕМ-нің, операциялық системаның және жоғары дәрежелі тілдердің трансляторларының жұмыс істеу принциптерін жете түсінуге көмектеседі. Ассемблерде программалау жеке құрылғыларға бірден қатынауға мүмкіндік беретіндіктен негізінен драйверлер және жоғары жылдамдықты, тиімді программалар жазуда қолданылады. Сол себепті оны оқу профессионалды программистер дайындаудың қажетті бөлігі болып саналады.
Қазіргі кезде персоналды компьютерлерде(ПК) көбінде INTEL(8086/8088,80186,80286,1386,1486 PENTUIM) фирмасының процес-сорлары қолданылады. Бұл процессорлар өзара бірегейленген(совместимы) - кіші модельдерінде жазылған программалар жоғарғы модельдерінде ешқандай өзгеріссіз орындалу мүмкіндігі бар. Сондықтан 8086 процессорын оқу келешекте басқа процессорларды оқуда алғашқы қадам болып табылады. Бұл курста 8086 процессорының ғана ерекшеліктері мен командалар жүйесі қарастырылады. Мұнда студент ПК жайлы (олардың құрылымы, машина тілі және екілік санау жүйесі туралы) жалпы мағлұмат алған деп есептелінеді.
Ассемблер тілі – машина тілінің символдық формасы, бұл тілді қолдану машиналық программаны жазуды біршама жеңілдетеді. Бір ЭВМ үшін әр түрлі Ассемблер тілдері шығарылуы мүмкін, қарастырылып отырған ДК-ге де осындай бірнеше тілдер ұсынылған. Бұл курста MICROSOFT фирмасы шығарған микроассемблер тілі (қысқаша MASM) қарастырылады.
Курстың міндеттері мен мақсаты:
§ Студенттердің машиналық команда және программа түсініктерін қалыптастыру;
§ “Ассемблер” тілінің командасының құрылымымен және командалар жүйесімен таныстыру;
§ “Ассемблер” тілін қолданып тиімді қолданбалы программалар құруға, пайдалануға үйрету.
Курсты оқу нәтижесінде студенттер мына білімдер мен дағдыларға қол жеткізулері тиіс:
§ программалау регистрлерінің құрылымындарын;
§ машиналық команданың түрлері мен құрылымдарын;
§ ассемблер сөйлемдерінің (командалар, директивалар, коментарилер) құрылымдарын;
§ сызықтық құрылымды программа құруды;
§ тармақтар мен циклддарды ұйымдастыруды;
§ енгізу-шығаруды ұйымдастыруды;
§ құрылымды мәліметтері(массив, жол, жазба, жиын) сипаттауды және өңдеуді;
§ биттық амалдарды (логикалық командалар, жылжыту командалары) қолдануды.
Бұл курсты оқу нәтижелі болу үшін алгоритмдеу, программалау тілдерінде программа жазу жолдарының негізгі түсініктері мен тәсілдерімен таныс болу қажет.
Пәннің мазмұны
Дәрістік сабақтар
Кіріспе. Ассемблер тілі деген не? Оны оқудың қажеттілігі. Миропроцессорлардың түрлері. Олардың ерекшеліктері мен құрылымы. Компьютердің жедел жады.
Регистрлер. Регистрлердің түрлері, өлшемдері. Жалпы регистрлер. Сегменттік регистрлер. Команда көрсеткіші. Жалаушалар регистрі.
ДК-де мәліметтердің кескінделуі. Бүтін санның кескінделуі. Таңбалы таңбасыз бүтін сандар. Ондық-екілік сандар. Нақты сандар. Символдық мәліметтердің кескінделуі.
Командалардың кескінделуі. «Регистр –регистр» форматы. «Регистр –жад» форматы. «Регистр –операнд» форматы. «Жад - операнд» форматы.
Ассемблер тілінің негізгі элементтері. Лексемалар. Идентификаторлар. Бүтін сандар. Сөйлемдер және олардың түрлері мен құрылымдары. Коментарилер. Командалар. Директивалар.
Мәліметтерді анықтау директивалары.DB, DW, DD,EQU. Өрнектер.Тұрақтылық өрнектері. Адрестік өрнектер.
Ассемблер командалары. Мәліметтерді орналастыру командалары. MOV командаcы.Тип сәйкестіктерін бақылау. Операторларда қосымша ығыстыруды қолдану. PTR операторы. XCHG командасы. Қосу және алу командалары. ДК –де бүтін сандарды қосу, алу ерекшеліктері. Көбейту және бөлу командалары.801860 және одан жоғарғы процессорлада көбейту командасы жайлы. Санның өлшемін өзгерту. Мысалдар.
Өтулер мен циклдар. Шартсыз өту. Тура өту. Жанама өту. Салыстыру, шартты өту командалары. Шартты өту командалары түрлері.Салыстыру командаларынан соң қолданылатын шартты өту командалары. Қандайда бір анықталған жалаушалардың мәндеріне байланысты өту. СХ регистрінің мәнін тексеру арқылы өту.
Шартты шартсыз өту командаларының көмегімен тармақтарды, циклдарды жүзеге асыру. «Әзір», «Дейін» құрылымды циклдар.
Циклдық командалар. LOOP, LOOPPE/LOOPPZ және LOOPNE/LOOPNZ командалары. Мысалдар.
Құрылымды мәліметтермен жұмыс. Массивтер. Индексті айнымалыларды ұйымдастыру. Адрестерді модификациялау. Индекстеу. Жанама сілтеме. Бірнеше регистрлер бойынша модификациялау. Модификацияланатын адрестердің жазылуы.