Ассемблер тілінде программалау туралы мәлімет



I. Кіріспе
II. Негізгі бөлім.
2.1 Ассемблер тілінде программалау
2.2 Ассемблер программасының құрылымы
2.4 Ассемблер және макроассемблер тілдері
2.3 Программалау тілдерінің қолданылуы
III. Қорытынды.
IV. Пайдаланылған әдебиеттер.
Программалау ортасы программалар мәтіндерін құруға, оларды компиляциялауға, қателер табуға және оларды тез жөндеуге, стандартты модульдерді қоса бөлек бөлімдерден программалардыжинақтауға, программаны орындауға мүмкіндік береді. Көлемі жағынан орташа болып келетін бағдарламаларды(бірнеше мың жолды код) құрастырғанда құрылымды бағдарламалау қолданылады.
Бағдарламаның құрылымы шығарылып жатқан есептің құрылымын көрсету керек, сонда бағдарлама мәтінінен есепті шығару алгоритмі түсінікті болады. Ол үшін қарапайым операторлар жеткіліксіз, алгоритмнің нақты құрылымын дәлірек көрсететін құралдар қажет. Сондықтан бағдарламалауға жаңа ұғым – ішкі бағдарламалар енгізілді.Қандай да нақты жазылған қолданушы программалары басқа тілге түрлендіретін программаларды транслятор деп атайды.
1. Балапанов Е.К., Бөрібаев Б., Дәулетқұлов А.Б. “Жаңа информациялық технологиялар” информатикадан 30 сабақ, Алматы-2001
2. Беньянш Ю. Л. Освоение персонального компьютера и работа с документами. - М.: Радио и связь, 1999г. - 408 с.
3. Борисов В.А. Разработка пакетов программ вычислительного типа. - М. Изд-во, 2000
4. Байжұманов М. Қ., Жапсарбаева Л. Қ. Информатика. Астана – 2004
5. Байшоланова Қ. С. Ақпараттықжүйелертеориясы. Алматы – 2002
6. Балпанов Е. Қ., Бөрібаев Б. Информатикадан 30 сабақ. Алматы – 1999
7. Балпанов Е. Қ., Бөрібаев Б., Мадиярова Г. Жаңаақпараттықтехнологиялар. Алматы – 2000

ҚАЗАҚСТАН РЕСПУБЛИКАСЫ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ
СЕМЕЙ ҚАЛАСЫНДАҒЫ ШӘКӘРІМ АТЫНДАҒЫ МЕМЛЕКЕТТІК УНИВЕРСИТЕТІ
ЖАРАТЫЛЫСТАНУ - МАТЕМАТИКА ФАКУЛЬТЕТІ
ИНФОРМАТИКА ЖӘНЕ АҚПАРАТТЫҚ ТЕХНОЛОГИЯЛАР КАФЕДРАСЫ

БӨЖ

Тақырыбы: Ассемблер тілінде программалау..


Орындаған:Альханова М.С
Тобы: Т - 241
Тексерген:Арғынгазина Ж.Н

Семей 2015-2016 ж
Жоспар
I. Кіріспе
II. Негізгі бөлім.
2.1 Ассемблер тілінде программалау
2.2 Ассемблер программасының құрылымы
2.4 Ассемблер және макроассемблер тілдері
2.3 Программалау тілдерінің қолданылуы
III. Қорытынды.
IV. Пайдаланылған әдебиеттер.

Кіріспе

Программалау ортасы программалар мәтіндерін құруға, оларды компиляциялауға, қателер табуға және оларды тез жөндеуге, стандартты модульдерді қоса бөлек бөлімдерден программалардыжинақтауға, программаны орындауға мүмкіндік береді. Көлемі жағынан орташа болып келетін бағдарламаларды(бірнеше мың жолды код) құрастырғанда құрылымды бағдарламалау қолданылады.
Бағдарламаның құрылымы шығарылып жатқан есептің құрылымын көрсету керек, сонда бағдарлама мәтінінен есепті шығару алгоритмі түсінікті болады. Ол үшін қарапайым операторлар жеткіліксіз, алгоритмнің нақты құрылымын дәлірек көрсететін құралдар қажет. Сондықтан бағдарламалауға жаңа ұғым - ішкі бағдарламалар енгізілді.Қандай да нақты жазылған қолданушы программалары басқа тілге түрлендіретін программаларды транслятор деп атайды.
Трансляторларды екі топқа бөлуге болады. Егер кіруші тіл сандық машиналық тілдің символикалық репрезентациясы болса, ондаоны ассемблер, ал кіруші тіл ассемблер тілі деп аталады. Егер кіруші тіл жоғары деңгейлі тіл болса, ал шығатын тіл не сандық машиналық тіл, не оның символикалық репрезентациясы, онда транслятор компилятор деп аталады. Фортран. IBM фирмасы жасап шығарған Фортран бағдарламалау тілі ең алғашқы және сәтті компилятор болып табылады. Профессор Дж. Букс пен американдық мамандардың бір тобы бұл тілді алғаш рет 1954 жылы жария етті. Толық түрінде FORmulae TRANslation - формулаларды түрлендіру.

Ассемблер тілінде программалау
Ассемблер тiлiнде программаны дайындау және iске қосу кезеңдерi программаның текстiн дайындау, трансляциялау, құрастыру және отладкалау кезеңдерiнен тұрады.
Программаның текстiн дайындау кез-келген текстiк текстiк редакторда, мысалы Norton Commander программасының текстiк редакторында жазылады. Дегенмен, программаның текстiн дайындау кезiнде WINDOWS жүйесiнiң WordPad және Блокнот программаларын қолдануға болады. Бiрақ бұл жағдайда орыс алфавитiмен қиындықтар туады, егер орыс әрiптерiмен жазылған түсiнiктемелер берiлсе, оны ДОС жүйесiнде ашып, трансляцияласақ әрiптер орнына түсiнiксiз символдар шығады. Сондықтан MS-DOS операциялық жүйесiнiң басқарылуымен орындалатын ассемблер программаларының текстерiн сол ортада жүргiзген дұрыс.
Алдыңғы сабақтағы программаны қарастырайық. Осы программадан бiрқатар қажеттi моменттердi атап көрсетуге болады. Программадағы assume, segment, ends, end операторлары ешқандай машина кодтарына трансляцияланбайды және жадыдан көрiнбейдi. Олар тек трансляторға трансляциялау командаларының тәсiлдерi (assume), сегмент шекаралары (segment, end), программаны аяқтайтын текстiк жол жөнiнде қызметтiк ақпарат беру үшiн қолданылады.
Программаның әрбiр трансляцияланатын сөйлемiне белгiлi-бiр араласу (смещение) сәйкес келедi., араласу тапсырмасы әрбiр сегментте жеке орындалады. Mov AX, DATA бiрiншi командасының команда сегментiнiң басынан араласуы бар, ол нөлге тең. Ол 3 байт орын алады, сондықтан келесi командада 3 байттан басталады.
Транслятор Mov AX, DATA командасының кодын толығымен анықтай алмады. Осы командада АХ регистрiне DATA сегментiнiң сегменттiк адресi берiледi. Бiрақ бұл адрес программаның орындалатын файлы жадығы жүктелгенде ғана белгiлi болады. Сондықтан программа листингiнде осы адрестiң орнына s әрпiмен белгiленген ноль сандары тұр. S әрпi бұл жерде белгiсiз сегменттiк адрестiң болатындығын көрсетiп тұр. ВА 0000 коды бар команда листингтiң 8-жолында орналасқан. Осы командада DX регистрiне msg деп аталатын жол араласуы жазылады (offset қызметтiк сөзi бұл жерде араласу көрсетiлгендiгiн бiлдiредi). Msg жолы мәлiметтер сегментiнiң ең басында орналасқан және оның сегмент басындағы араласуы 0-ге тең. Бұл команда неге r әрпiмен белгiленген.(r - relocatable- переместимый). Бұрын айтылғандай, кез-келген сегмент жадыда 16-ға еселi адреспен ғана орналасады.
TASM пакетiнен TD.EXE турбоотладчигiнiң жұмысын қарастырайық. Отладчикпен жұмыс iстемес бұрын жұмысшы катологта жүктемелiк (p.exe) және бастамалық (p.asm) файлдарының бар екендiгiн тексерiп алу қажет.
Отладчиктi қосу үшiн келесi команданы енгiзу қажет:
td p
команданы енгiзгеннен кейiн экранда отладчик терезесi ашылады. Бұл процесс кезiнде экранға бiрнеше терезелердi шығару қажет болады. Олар көп болғандықтан бiр-бiрiн жауып тұрады. Олардың барлығын бiруақытта көру үшiн өлшемдерiн кiшiрейту қажет болады. Терезелер өлшемдерiн өзгерту Ctrl+F5 командасымен жүредi.

Отладчиктiң бастапқы терезесi (1-сурет) программаны зерттеу үшiн аз ақпарат бередi.Ассемблер тiлiнiң деңгейiнде программаны отладкалау үшiн процессордың жалауша регистрлерiн қоса, барлық регистрлерiн, көп жпғдпйда программадан тыс мiлiметтер өрiстерiн зерттеу қажет. Неғұрлым көп ақпарат беретiн терезе - процессор терезесi, ол View-CPU менюiмен немесе Alt-V-C клавишаларымен шақырылады.

Процессор терезес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н арнайы идентифиаторлар қолданылады:Оларға:
* DB (Dimension Byte) - 1 байт өлшемдi айнымалыны сипаттау.
* DW (Dimension Word) - 2 байт өлшемдi айнымалыны сипаттау. (машиналық сөз)
* DD (Dimension Double word) - 4 байт өлшемдi айнымалыны сипаттау. (екiлiк сөз)
* DQ (Dimension Quadruple word) - 8 байт өлшемдi айнымалыны сипаттау. (4 сөз)
Айнымалыны сипатау синтаксисi:
Айнымалы аты тип бастапқы мән
Мұндағы, бастапқы мән- осы типке беруге болатын кез-келген сан. Санды жазу ондық, он алтылық, сегiздiк, екiлiк форматта, алдына есептеу жүйесiнiң әрпi қойылу арқылы жазылады:
* d (Decimal) - ондық сан. Мысалы 034d саны 34 санын бiлдiредi.
* h (Hex) - он алтылық сан. Мысалы: 3е5ah, 0ac44h, 0f0h.
* o (Octal) - сегiздiк сан. Құрамына 0,1,2,3,4,5,6,7 осы сандар кiредi.
* b (Binary) - екiлiк сан. Құрамына 0 және 1 сандары кiредi.

Ассемблер және макроассемблер тілдері
Ассамблер таңбалар (символдар)тілі бола отырып,белгілі бір дәрежеде машина тілінде программа жасаудағы кемшіліктерді жоюға мүмкіндік береді.
Ассамблер тілінде программаның барлық элементтері таңбалармен берілетіндігі оның басты артықшылығы болып табылады.Басқаша айтқанда ассамблер тілінің машина командаларының цифрлық кодтарын әріптермен немесе әріп-цифрлармен таңбалауға және деректердің таңбалық аттарын пайдалануға мүмкіндік беретіндігі оның машина тілінен айырмашылығы болып табылады. Ассамблер тілінің командаларын машина тіліне аударғанда машина командасын білдіретін әрбір оператор осы команданың цифрлық кодтарымен алмастырылады. Командалардың таңбалық аттарын олардың екілік кодтарына түрлендіру жұмысы программа жасаушы адамды өте қиын әрі күрделі машақаты көп жұмыстан босататын және бұл жағдайда құтиылоуға болмайтын қателіктерден құтқаратын арнайы программа-ассамблерге жүктеледі.
Ассамблер тілінде программалауда пайдаланылатын таңбалық аттар программаның семантикасын, ал команданың қысқартылып берілген атаулары оның негізгі функциясын білдіреді.Мысалы, ADD-қосу, SUB-азайту, PARAM-параметр т.с.с.Мұндай аттарды программа жасаушылар оңай есінде сақтайтын болады.
Ассамблер тілінде программа жасау үшін машина тілінде программа жасағандағыдан көп ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
ЭЕМ-ң қызметі, құрамы және жіктелуі
Алгоритмдерді құрылымын негізге ала отырып құрастыру
ЭЕМ-ң қызметі, құрамы және жіктелуі туралы ақпарат
«Ассемблер-күрделі машиналық тіл»
Си бағдарламалау тілі
С C программалау тілдерынын мумкіндіктері мен ерекшеліктеріне шолу
СИ бағдарламалау тілі және жобалануы туралы
Мектепте алгоритмдеу және Паскаль тілін оқыту әдістемесі
Си тілінде құрылған программаның құрылымын сипаттау
Клавиатура буферін тазарту
Пәндер