Жыланша ойыны


Жұмыс түрі:  Курстық жұмыс
Тегін:  Антиплагиат
Көлемі: 15 бет
Таңдаулыға:   
ҚАЗАҚСТАН РЕСПУБЛИКАСЫ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ

Қаныш Сатбаев атындағы Қазақ ұлттық техникалық
университеті

Есептеу техника кафедрасы

Курстық жобаға

Т Ү С І Н І К Т Е М Е Қ А Ғ А З

Тақырыбы: “Жыланша” ойыны

жетекші:
аға оқытушы
Мустафина Б. М.
тапсырған күні:
“___” ________________ 2003 г.
қолы:
_____________________
студент: Нұрбаев А. Б.
тобы: ЗБИ-00-1
мамандығы: 3704

Àëìàòû 2003

ÒÀÏÑÛÐÌÀ

“Æûëàíøà” îéûíûí ìåíãåðåòií ïðîãðàììà æàçûíûç

Òàïñûðìàíû áåðãåí (___(_________2003æ. À¹à îºûòóøы(

Ìóñòàôèíà Á. Ì.

Òàïñûðìà àë¹àí (___(_________2003г. студент( ͽðáàåâ À.Б.

ÌÀÇ̵ÍÛ

Êiðiñïå ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .4
1. Әäiñòi ñèïàòòàó ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .5
2. Ïðîãðàììàíû ñèïàòòàó ... ... ... ... ... ... ... ... ... ... ... ... ...6
2.1 Æàëïû ìà¹ë½ìàòòàð ... ... ... ... ... ... ... ... ... ... ... ... ... ..6
2.2 Ôóíêöèîíàëäûº áåëãiëåíói ... ... ... ... ... ... ... ... ... 6
3. Ëîãèêàëûº ñòðóêòóðà ñèïàòòàìàñû ... ... ... ... ... ... ..6
3.1 Блок-схема ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...7
3.2 Ïðîãðàììàíûң æîëäûº ñèïàòòàìàñû ... ... ... ... ... ..7
3.3 Øàºûðó æ¸íå æ¾êòåó ... ... ... ... ... ... ... ... ... ... ... ... ... ..7
3.4 Ïàéäàëàíûëàòûí òåõíèêàëû æàáäûºòàð ... ... ... .8
²îðûòûíäû ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 9
°äåáèåòòåð òiçiìi ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .10
²îñûìøà А ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . ... 11
²îñûìøà В ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . ... 21

ÊIÐIÑÏÅ

Á½Ë ÊÓÐÑÒÛº ÆÎÁÀ “ÆÛËÀÍØÀ” ÎÉÛÍÛÍ ÌÅÍÃÅÐÅÒIÍ ÏÐÎÃÐÀÌÌÀÍÛ ӨҢÄÅÓÃÅ
ÀÐÍÀËÃÀÍ. ПРОГРАММА АССЕМБЛЕР ÒIËIÍÄÅ ЖАЗЫЛҒАНДЫҚТАН, ÎË ОНЫҢ ƽÌÛÑ IÑÒÅÓ
ÆÛËÄÀÌÄÛ¹ÛÍ ÅĸÓIÐ ÆιÀÐÛËÀÒÛϸ ʼËÅÌIÍ ÀÉÒÀÐËÛºÒÀÉ ÀÇÀÉÒÀÄÛ¸ÁÀÑÒÀϺÛ
ÑÈÿºÒÛ ÎÐÛÍÄÀËÀÒÛÍ ÔÀÉË Ê¼ËÅÌIÍ ÄÅ.
Àссемблер òiëi – á½ë ìàøèíàëûº òiëäiң ñèìâîëäûº ê¼ðiíiñi. ̸øèíåäåãi
áàðëûº ¾ðäiñòåð ең төмен¸ àïïàðàòòûº äåíãåéäåí ¸ðåêåòêå òåê машиналық
тілдің èíñòðóêöèÿëàðû àðºûëû êåëåäi. Á½äàí æàëïû áåëãiëåíóãå ºàðàìàñòàí
àññåìáëåð òiëi ¸ðáið êîìïüþòåð òèïi ¾øií æåêåøå. Á½ë àññåìáëåð òiëiíäå
æàçûë¹àí ïðîãðàììàíûң iøêi ò¾ðiíå äå ºàòûñòû. Àññåìáëåð òiëií áiëìåé
àïïàðàòóðàìåí áàéëàíûñòû åñåïòåðäi øåøó ì¾ìêií åìåñ. Программист æ¸íå
ïàéäàëàíóøû êåç êåëãåí æî¹àðû äåíãåéëi æàáäûқòàðäû âèðòóàëäû ¸ëåì ê½ðóãà
áîëàòûí æà¹äàéëàð¹à äåéií ïàéäàëàíà àëàäû.
Аë åíäi ïðîãðàììèñòòå қèûí жағдай òóûíäàäû äåëiê¸ ïðîãðàììèñò
ºàíøàëûºòû àêûëäû áîëñà äภîë ïðîãðàììàíû æàç¹àí òië қàíøàëûқòû æàºñû
áîëñà äภàññåìáëåðäi áiëìåéiíøå á½ë æà¹äàéäûң øåøiìií òàáó ºèûí. Ñîíäûºòàí
áàðëûº æî¹àðû äåíãåéëi òiëäåð êîìïèëÿòîðëàðû қ½ðàìûíûң ìîäóëäåðiíiң
àññåìáëåð òiëiíiң ìîäóëüäåðiìåí áàéëàíûñòû æàáäûºòàðû áàð íåìåñå àññåìáëåð
ïðîãðàììàëàó äåңãåéiíå øû¹óäû ºîëäàéäû.
Ñîíäûºòàí êîìïüþòåðìåí áàéëàíûñòû ¸ðáið àäàì ¾øií àññåìáëåð òiëií áiëó
ìàңûçäû.

1. Әдісті сипаттау

1. Массивтерді сұрыптау
Әдетте сұрыптау есептерін шешу кезінде қосымша жадыны минималды пайдалану
шарты алға тартылады, бұдан қосымша массивтерді пайдалану мүмкіндігі
азаяды.
Әр түрлі сұрыптау әдістерінің алгоритмдерінің тез әрекеттілігін бағалау
үшін екі көрсеткіш пайдаланылады:
• меншіктеу саны;
• салыстыру саны;
• барлық сұрыптау әдістерін 2 үлкен топқа бөлуге болады: сұрыптаудың тура
және жақсартылған әдістері;
Сұрыптаудың тура әдістерін 3 топшаға бөлуге болады:
1. қою арқылы сұрыптау (қосу арқылы)
2. таңдау арқылы сұрыптау (бөлу арқылы)
3. ауыстыру арқылы сұрыптау (“түйіршіктеу” арқылы)
Сұрыптаудың жақсартылған әдістері сұрыптаудың тура әдісіне негізделген,
бірақ сұрыптау үрдісін жеделдету үшін кейбір оригиналды идеялар
қолданылады. Тура әдістер тәжірибеде сирек қолданылыды, өйткені олардың тез
әрекеттілігі өте төмен.

1. 1. 1 Қою арқылы сұрыптау
Берілген курстық жобада жоғарыда көрсетілген массивтерді сұрыптау әдісі
баяндалады.
Әдіс принципі:
Массив 2 бөлікке бөлінеді: сұрыпталған және сұрыпталмаған. Сұрыпталған
бөліктің элементтері кезекпен таңдалып алынып, сұрыпталынған бөлікке ондағы
элементтер ретін бұзбайтындай етіп қойылады. Алгоритм жұмысының басында
массивтің сұрыпталған бөлігі ретінде тек бір элемент алынады. Ал
сұрыпталмаған бөлігі ретінде - қалғандары.
Осылайша алгоритм құрамында n-1 кірістен тұрады, бұлардың әрбіреуі 4
әрекеттен тұрады:
• кезектегі і-ші сұрыпталмаған элементті алып, оны қосымша айнымалыға
сақтау;
• аланған элементтің болуы элемент ретін бұзбайтын массивтің сұрыпталған
бөлігінен j позициясын іздеу;
• i-1 –ден j-1-ге дейін массив элементтерін оңға жылжыту, қоюдың табылған
позицияларын босату үшін;
• алынған элементті табылған j - позицияға қою;

Берілген методты меңгеру үшін бір-бірінен қою позициясын іздеу тәсілімен
ерекшеленетін бірнеше әдісті ұсынуға болады.

1. 1. 2 Таңдау арқылы сұрыптау
Әдіс принципі:
Массивтен мәні минималды элементті тауып, 1-элементтен n-ші элементке
дейінгі интервалдан, кейін оны 1-ші элементтің орнымен ауыстырамыз. Екінші
қадамда 2-ден n-ге дейінгі интервалдан минималды мәнді элементті тауып оны
2-ші элементтің орнымен ауыстырамыз.
Осылайша барлық элементтер үшін n-1-ге дейін.

1. 1. 3 Ауыстыру арқылы сұрыптау(“түйіршіктеу” арқылы сұрыптау)
Әдіс принципі:
Солдан оңға қарай екі көрші элемент салыстырылады, егер олардың орналасу
қатынасы бір-бірімен реттік шартқа сай болмаса, онда олар орындарымен
ауысады. Кейін келесі көрші екі элемент алынып, массивтің соңына дейін
осылайша жалғасады.

2. Программаны баяндау

3. 1 Жалпы мағлұматтар
Программа ZMEYA деп аталады. Программаның жұмыс атқаруына қажетті
программалық қамтама: ОЖ Windows 95982000 және Tasm программалар пакеті.

2. 2 Функционалдық белгіленуі
Программа демалу және көңіл көтеруге арналған.

3. Логикалық құрылымның баяндалуы
Программаның негізгі әдісі - массивтерді сұрыптау. Символдар
массиві(жыланша) – бұл жыланша бөліктері. Жыланша бағытша пернелерін басу
арқылы жылжиды.
Жыланша белгіленген терезеде белгіленген жылдамдық арқылы жылжидыб ал
жыланша терезеден шыққан кезде ойынның соңы болады. Жылдамдықты
программадан белгілеуге болады. Жыланның ұзындығына терезе ұзындығы сай
келеді, яғни терезе 100x100 болса, онда жыланша ұзындығы сәйкесінше 100000
символ.
Ойынды бастар алдында ойыншының атын енг!зу туралы белг! Шығады, осы жерге
атын енг!зед!. Ойыншы атын енг!згеннен кей!н нег!зг! программа ж!бер!лед!.
Жыланшаны басқару жоғарыда айтылғандай жүзеге асырылады.
Символдардың пайда болуы кездейсоқтықпен !ске асады, координаттары да
кездейсоқтықпен !ске асады. Бұл кезде координата орындарында басқа
символдардың бар жоғы тексер!лед!. Бар болса басқа координата алынады.

4. 1 Блок-схема
(B қосымшасын қараңыз)
0 басы
1 Айнымалыларды баяндау және деректерд! орнату
2 Пернен!ң басылуына тексеру, басылып тұрса, онда 3-блокқа, басылмаса 24-
блокқа
3 Жоғарғы бағытшаға басылып тұрса, 8-блокқа, жоқ болса 4-блокқа
4 Төменг! Бағытшаға басылып тұрса, 12-блокқа, жоқ болса 5-блокқа
5 Оң бағытшасына басылып тұрса, 16-блокқа, жоқ болса 6-блокқа
6 Сол бағытшасына басылып тұрса, 20-блокқа, жоқ болса 7-блокқа
7 ESC басылып тұрса, 24-блокқа, жоқ болса 2-блокқа
8 Жыланшаны еск! Орнынан өш!р!п, 9-блокқа
9 y координатасын 1-ге азайтып, 10-блокқа
10 К!д!р!с процедурасын шақырып, 11-блокқа
11 Жыланшаны жаңа жерде кеск!ндеп, 2-блокқа
12 Жыланшаны еск! Орнынан өш!р!п, 13-блокқа
13 y координатасын 1-ге арттырып, 14-блокқа
14 К!д!р!с процедурасын шақырып, 15-блокқа
15 Жыланшаны жаңа жерде кеск!ндеп, 2-блокқа
16 Жыланшаны еск! Орнынан өш!р!п, 17-блокқа
17 x координатасын 1-ге арттырып, 18-блокқа
18 К!д!р!с процедурасын шақырып, 19-блокқа
19 Жыланшаны жаңа жерде кеск!ндеп, 2-блокқа
20 Жыланшаны еск! Орнынан өш!р!п, 21-блокқа
21 x координатасын 1-ге арттырып, 22-блокқа
22 К!д!р!с процедурасын шақырып, 23-блокқа
23 Жыланшаны жаңа жерде кеск!ндеп, 2-блокқа
24 Соңы

4. 2 Мәт!нн!ң жолдарына байланысты программа логикасын баяндау

1 Программа моделін баяндау
2 Стек үшін жадыдан орын бөлу
3 Деректер сегменті
4-17 Айнымалыларды баяндау
18 Кода сегменті
20 delay макросын құру
21-34 Берілген макрос кідіріс функциясын орындайды
36 ust_sym макросын құру
37-62 Берілген макроста символды еркін экран координаталарын орнату
алгоритмі келесі ретте осы макросты шақыру қаралады
64 game процедурасын құру
655-658 Бұл процедурада ойынның өзі қарастырылады. Ойын алгоритмі
төмендегідей: алдымен перненің басылуын күтеміз, кейін перненің басылуын
тексеру жүреді
658 Программамызды көрсететін start тамғасын баяндаймыз
670-671 ds сегменті мен днрнктер сегментін біріктіреміз
663 clean макросын шақырамыз
667 game процедурасын шақырамыз
669-677 программа соңы

2. 3 Шақыру және жүктеу
Алдымен tasm.exe файлының көмегімен программаны компилируйтетуіміз керек.
Кейіннен қате болмаған жағдайда obj файлын tlink.exe файлының көмегімен
линктеуіміз керек.
Осыдан алынған exe файлын жүктеуге болады.

3. 4 Қолданылатын техникалық жабдықтар
Курстық жобамен жұмыс кезінде Celeron 900 ПК және DeskJet 3325 принтері
қолданылды.

4. Қорытынды

Бұл курстық жобаны орындау кезінде “Жүйелік
программалау”,”Жоғарғы математика” пәндерінен алған барлық теориялық және
практикалық білім қолданылды.
Ассемблер тілі машиналық тілдің аналогы болып табылатындықтан, ол
микропроцессор архитектурасымен үздіксіз байланысты. Сондықтан оның
архитектурасына өзгеріс енгізерліктей жағдай болса, ассемблер кеңінен
қолданылады.
Компьютерде ассемблерді білмей-ақ жұмыс істеуге болар, бірақ
кәсіпқой программистті дайындау элементі ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Балаларды қадағалау
Қимыл-қозғалыс ойындары
Дене тәрбиесі қасиеттерін дамытуға арналған қимыл-қозғалыс ойындары
Ересек топтарында қимыл - қозғалыс ойындарын ұйымдастырудың ерекшеліктері
Қимыл қозғалыс ойындары туралы
Жылу алмастырғыштар
Дәрістер бойынша қысқаша конспект
Өздік жұмыстары көріктеу, ажарлау құралдарына картотека
Мектеп жасына дейінгі балалардымен ұйымдастырылатын дене жаттығулары
Мектеп жасына дейінгі балаларды тәрбиелеудегі ұлттық ойындардың маңыздылығы
Пәндер