“Kompyuter injiniringi” fakult ti
Download 0.63 Mb. Pdf ko'rish
|
ushbu uslubiy korsatma telekommunikatsiya texnologiyalari talim yonalishi talabalari uchun moljallangan. (1)
O`zb kiston R spublikasi Axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi Toshkent axborot texnologiyalari universiteti Urganch filiali “Kompyuter injiniringi” fakult ti Matyakubov M.Ya, Matyokubov O’.K “Tizimli dasturlash” fanidan (tajriba mashg`ulotlarni o`tkazish bo`yicha) Uslubiy qo`llanma Urganch - 2016 y 2 U U s s h h b b u u u u s s l l u u b b i i y y k k o o ` ` r r s s a a t t m m a a " " T T e e l l e e k k o o m m m m u u n n i i k k a a t t s s i i y y a a t t e e x x n n o o l l o o g g i i y y a a l l a a r r i i " " t t a a ’ ’ l l i i m m y y o o ’ ’ n n a a l l i i s s h h i i t t a a l l a a b b a a l l a a r r i i u u c c h h u u n n m m o o ` ` l l j j a a l l l l a a n n g g a a n n b b o o ` ` l l i i b b , , " " T T i i z z i i m m l l i i d d a a s s t t u u r r l l a a s s h h " " f f a a n n i i d d a a n n t t a a j j r r i i b b a a m m a a s s h h g g ` ` u u l l o o t t l l a a r r i i n n i i o o ` ` t t k k a a z z i i s s h h b b o o ` ` y y i i c c h h a a b b a a r r c c h h a a y y o o ` ` r r i i q q n n o o m m a a l l a a r r n n i i v v a a t t a a j j r r i i b b a a i i s s h h i i v v a a r r i i a a n n t t l l a a r r i i n n i i o o ` ` z z i i c c h h i i g g a a o o l l g g a a n n . . Uslubiy ko`rsatmadan Assembler dasturlash tilini mustaqil o`rganuvchi talabalar va professor o`qituvchilar foydalanishi mumkin. Tuzuvchilar: M. Matyakubov -TATU Urganch filiali «Dasturiy injiniring» kaf drasining assistenti. O’.Matyokubov -TATU Urganch filiali «Telekommunikatsiya injiniringi» kaf drasining assistenti. Taqrizchilar: O. Xo’jayev TATU Urganch filiali «Dasturiy injiniring» kaf drasi mudiri. Gandjayev T. X “O’zbektelekom” AK “Uzmobile” filiali Xorazm bog’lamasi boshlig’i Uslubiy ko’rsatma TATU Urganch filiali «Dasturiy injiniring» kafedrasining umumiy majlisida ko`rib chiqilgan va ma`qullangan. (Bayonnoma 1 « 28 » avgust 2016 yil) Uslubiy ko’rsatma TATU Urganch filiali ilmiy-uslubiy k ngashida muxokama qilingan va chop etishga tavsiya etilgan. (Bayonnoma 1 «29 » avgust 2016 yil)
3 Kirish Assembler tilida dasturlarni yozish uchun komp’yuterning barcha tarmoqlar- ning tuzilishlarini bilish kerak. Kompyuterning asosida bit va bayt tushunchalari mavjud. Ular yordamida kompyuterning xotirasidagi komandalar va ma’lumotlar ko’rsatiladi. Dasturlar mashinaviy kodlar ko’rinishida ma’lumotlarni aniqlash segmentlaridan tashkil topgan. Bu segmentlar mashina buyruqlari va adreslarini saqlovchi steklardir. Arifmetik amallarni, ma’lumotlarni yuborish va adreslash uchun kompyuterda bir necha registrlar mavjud. Birinchi kompyuterlarni yaratilishi davridan boshlab xozirgi kungacha dasturchilarni assambler tili haqidagi qarashlarini qizikarli tarzda kuzatish mumkin. Qachonlardir assembler tilini yaxshi bilmasdan kompyuterni biron bir foydali ish kilishga majbur qilib bo’lmas edi. Vaqt o’tishi bilan xolat uzgarib, kompyuter bilan mulokot qilishning zamonaviy, qulay vositalari vujudga keldi. Lekin boshqa tillardan farqli xolda, assembler tili o’lmadi. Assembler tili - bu mashina tilining simvolik ko’rinishidir. Mashinaning quyi apparat darajasidagi hamma jarayonlar mashina tili buyruklari yordamida amalga oshiriladi. Bundan ko’rinadiki umumiy nomlanishdan qat’iy nazar, xar bir turdagi kompyuterning assembler tili mavjud. Kompyuter apparat qismiga bog’lik bo’lgan muammolarni assembler tilini bilmasdan hal etish juda qiyin. Dasturchi yoki foydalanuvchi boshqa ixtiyoriy yuqori darajali dasturlash vositalardan foydalanib turli xil vazifalarni bajarishi mumkin. Kompyuter tizimining to’la zaxirasidan foydalanish uchun adreslash rejimini va mikroprotsessor buyruqlarini bilish talab etiladi. Adreslash rejimi shunday usullarni ko’rsatadiki, uning yordamida dastur buyruqlariga va ma’lumotlarga yo’l ochiladi. Xamma yuqori darajali dasturlash tillarining kompilyatorlarida yoki translyatorlarida dasturda assembler muxitiga chiqish uchun o’zining modellari mavjud. Assembler tilida dasturlash uchun kompyuterning ishlash tamoyilini va uning arxitekturasini bilish talab etiladi. Shaxsiy kompyuterlar quyidagi komponentlardan tuzilgan. 4 1.1-rasm. Shaxsiy kompyuter va uning perefirik qurilmalari. Zamonaviy kompyuterni inson darajasiga yetishiga albatta ancha bor. Lekin kompyuter bilan yuqori darajada muloqat qilishimizdan qat’iy nazar oxirgi xolatda xammasi mashina buyruqlari ketma – ketligidan iborat bo’ladi. Xar bir buyruq biror bir shartli refleksni keltirib chiquvchi o’ziga xos xususiyatga ega. Bu buyruqlar mikropragrammalar ko’rinishida bo’ladi. Mikroprogrammalar kompyuterning mantiqiy sxemalariga uzatiluvchi, o’z navbatida kompyuterning turli tizimlarini boshqaruvchi signal darajasida bo’lib, mashina buyrug’i sifatida aniq biror bir vazifalarni bajaradi. Shuning uchun mikroprogrammali boshqarish tamoyili deb yuritiladi. Kompyuterni unumli ishlashi uchun operatsion sistemalar, dasturlash tillari va dasturiy ta’minotlar yaratildi. Bu dasturlarni kompyuter qayta ishlashda xar bir berilgan axborotlarni, buyruqlarni anik bir tilda 0 va 1 larning kombinatsialaridan iborat bo’lgan holda qayta ishlaydi va bu kombinatsiyalar mashina tilini tashkil etadi. Yukoridagilarga asosan kompyuter faqat bir tilni taniydi xolos, ya’ni mashina tilini. Albatta kompyuter bilan muloqot qilishda mashina tilini bilish shart emas, lekin amaliy jixatdan professional dasturchilar ertami kechmi uni o’rganishga to’g’ri keladilar. 50 – yillarda dasturchilar programmalar tuzish uchun mashina tilining simvolik ko’rinishni yaratishdi va uni assembler deb atadilar. Bu til, mashina tilini xamma xususiyatlarini o’zida aniq namoyon qilgan. Shuning uchun assembler tilini yukori darajali tillarga nisbatan farqi xar bir turdagi kompyuterning o’z assembleri bor. Samarali programmalarni bu til orqali yozish mumkin, faqat kuchli dasturchilar tomonidan. Assembler tili quyi darajali til hisoblanib, asosan bu tildan kompyuterning apparat qismidan unumli foydalanishda bu tilga murojaat etiladi.
Ayrim xollarda programmani bajarilishi vaqtini tezlashtirish va xotiradan samarali foydalanish uchun assembler tilida programmalar tuziladi. So’ng bu programmalarni qism programmalar ko’rinishida tasvirlab, yuqori darajali tilda yozilgan programmalarga bog’lanadi. Assembler tilida yozilgan programma boshqa yuqori darajali tilda yozilgan ekvivalent programmaga nisbatan samarali, ya’ni xotirada kam joy egallaydi va tez bajariladi. Xulosa qilib shuni aytish mumkinki assembler tilida programmalash uchun kompyuter arxitekturasini, mikroprotsessorning funktsional tuzilishini, registrlar va ularni vazifalarini, kiritish chikarish portlarini bilish talab etiladi. Yuqori Tizimli blok Monitor
Chop etish qurilmasi ) kkumulyator Klaviatura 5 darajali tillarda programma tuzishda, apparat darajasidagi jarayonlarni boshqarishda, rezident dasturlar tuzishda assembler tili yordamida qism programmalarini yaratish va bu qism programmalarini modellar ko’rinishida tashkil etib yuqori darajali tillarda tuzilgan programmalarda foydalanish yanada samara beradi. Assemblerda tuzilgan dasturlar tez bajariladi va xotiradan kam joy egallaydi.
Laboratoriya ishlari “Tizimli dastulash” kursini o‘rganish jarayonida belgilangan tematik reja asosida bajarilib boriladi va quyidagi qoidalarga amal qilinadi: 1. Tizimli dasturlarni tuzishda asosiy vosita sifatida assembler (istalgan versiya) yoki C++ (istalgan versiya) dasturlash tillarining biridan foydalanish mumkin. 2. Tuziladigan dastur xususiyati va kompilyatsiyalash talabidan kelib chiqqan holda TASM, TASM5, MASM32, WASM, Codeblocks-10.05 kabi dastur muharrirlarini ishlatish mumkin. 3. Ayrim hollarda DOS yoki Windows operatsion tizimidagi jarayonlarni tahlil qilish bilan bog‘liq masalalarga duch kelganda(operatsion tizim razryadi mos kelmagan holda), ixtiyoriy vizual dasturlash tizimlarining biridan foydalanish mumkin.
II. Laboratoriya ishini bajarish tartibi Barcha laboratoriya ishlari quyida ko‘rsatilgan talablar asosida bir xil tartibda amalga oshiriladi: 1. Masalaning qo‘yilishi va boshlang‘ich ma’lumotlar bilan tanishish; 2. Nazariy ma’lumotlar to‘plash va hisobot uchun tayyorlash; 3. Dastur tuzilishini loyihalashtirish; 4. Dastur tuzish; 5. Dastur matnini mashinaga kiritish; 6. Dasturni kompilyatsiya qilish; 7. Dasturda xatoga yo‘l qo‘yilgan bo‘lsa, tuzatish va tahlilini keltirish; 8. Natijani olish. 9. Yozma hisobot tayyorlash. III. Hisobot mazmuni Laboratoriya ishlarini topshirish uchun talaba hisobot tayyorlashi va hisobotda tubandagi bandlar to‘liq aks etgan bo‘lishi lozim: 1. Laboratoriya ishining mavzusi; 6 2. Ishning maqsadi; 3. Masalaning qo‘yilishi; 4. Mavzu va qo‘yilgan masalaga daxldor qisqacha nazariy ma’lumotlar; 5. Dastur matni; 6. Kompilyatsiyalash algoritmi matni; 7. Dastur natijasi (aynan ekrandagi tasviri bilan);
1. Tajriba ishini o`z vaqtida bajarmagan talaba o`qituvchi b lgilagan vaqtda( dars mashg`ulotlaridan bo`sh vaqtda) k lib ishni bajaradi va lgilangan tartibda uni himoya qiladi; 2. Agar talaba dars mobaynida va qo`shimcha b lgilangan vaqtda ham tajriba ishini bajarmasa, shu mavzu uchun r yting ballarini olmagan va mavzuni o`zlashtirmagan hisoblanadi. Tajriba ishlarini bajarish uchun k rakli jihozlar, t xnik va dasturiy vositalar: 1. Kompyut r; 2. Op ratsion tizim (Windows 2000, Windows xp,Windows 7, Windows 8 yoki Linux va boshqa operatsion tizimlar); 3. Turbo assembler dasturi 4. Codeblocks-10.05 dasturi yoki Visual dasturlari 7 Tajriba ishi 1,2 Mavzu: Fayllar va fayllar tizimi bilan ishlash Ishdan maqsad: tizimli dasturiy ta’minot nazariyasining asosiy tushunchalaridan biri bo’lgan fayllar bilan ishlash, ular ustida turli amallarni bajarish ish printsiplari bilan tanishgan xolda o’rganish, berilgan sodda misol uchun dastur tuzish ko’nikmalarini hosil qilish.
Fayl tizimi - bu operatsion tizim komponentasi bo’lib, nomlangan berilganlar to’plamiga murojaatni, tashkil etish va saqlashni ta’minlovchidir.Berilganlarning nomlangan to’plami fayllar deb ataladi. Fayllarning asosiy xususiyatlari. 1. Fayl -bu ismga ega ob’ekt bo’lib, shu ism orqali faylni ichidagi ma’lumotlar bilan ishlovchi ob’ektdir. Ism bu belgilar ketma-ketligi bo’lib, uning uzunligi aniq operatsion tizim turiga bog’liqdir. 2. Faylni joylashishiga bog’liq emasligi. Aniq bir fayl bilan ishlash uchun u faylning tashqi qurilmadagi joylashishini bilish talab qilinmaydi. 3. Kirish-chiqish funktsiyalari to’plami. Xar bir operatsion tizim fayllar bilan ma’lumot almashinuvni ta’minlovchi funktsiyalar to’plamiga ega. Bu funktsiyalar to’plami quyidagilardan tashkil topadi: 1. Fayl ish uchun ochilgan. Yoki mavjud yoki yangi faylni ochish mumkin. Shunday savol tug’ilishi mumkin. - nima uchun faylni ochish kerak? Nima uchun birdaniga fayldan o’qish va faylga yozish mumkin emas? Xaqiqatda, bu operatsion tizimga fayl aniq jarayon bilan ishlashini markaziy ravishda e’lon qilish vositasidir.U esa ushbu ma’lumotlarga asosan qandaydir yechim qabul qilishi mumkin. (masalan, boshqa jarayonlar uchun ushbu faylga murojaatni cheklab qo’yishi mumkin.). 2. O’qish-yozish. Ko’pincha fayl bilan ma’lumot almashinuv berilganlar bloki ko’rinishida tashkil etilishi mumkin. Ushbu berilganlar bloki ikki xil xususiyatga ega. Bir tomondan ixtiyoriy hisoblash tizimi uchun berilganlar blokining o’lchami aniq berilgan, ya’ni bular apparat -dastur o’lchamlaridir. Ikkinchi tomondan bu berilganlar bloki real almashinuvda dasturchi tomonidan ixtiyoriy ravishda boshqarilishi mumkin. O’qish-yozish funktsiyalarida ko’pincha almashinuv uchun berilganlar bloki o’lchami va o’qilishi yoki yozilishi kerak bo’lgan berilganlar bloki soni beriladi. Tanlangan berilganlar blokining o’lchamidan almashinuvlarning unumdorligi bog’liq, faraz qilaylik bir mashina uchun berilganlar blokining unumdorlik o’lchami 256 Kb bo’lsa, siz 128 Kb lik almashinuvni amalga oshirmoqchi bo’lsangiz, u xolda siz mantiqiy bloklarni o’qish uchun ikki marotaba 128 Kb dan murojaat qilasiz. Bu xolda siz 256 Kb ni bir martada o’qish o’rniga, bir blokga ikki marotaba murojaat qilasiz va bir safar yarmini, keyingi safar keyingi yarmini o’qiysiz. Bu erda yana ba’zi bir «unimsizlik» elementlari uchrashi xam mumkin, lekin ularni «aqlli» operatsion tizim tekislab yuboradi, agar tekislay olmasa, demak bu sizning xatoyingiz bo’ladi. 3. Fayl ko’rsatkichini boshqarish. Xar bir ochilgan fayl bilan fayl ko’rsatkichi tushunchasi bog’liq. Bu ko’rsatkich komandalarning hisoblagich registri bo’lib, xar bir vaqtda keyingi fayl bo’yicha almashinuvni amalga oshirish mumkin bo’lgan nisbiy adresni ko’rsatadi. Ushbu blok bilan almashinuv tugagandan so’ng ko’rsatkich blokdan tashqariga ko’chiriladi. Fayl bilan ishni tashkil etish uchun ushbu fayl ko’rsatkichini boshqarish talab etiladi. Fayl ko’rsatkichini boshqarish funktsiyasi mavjud bo’lib, ko’rsatkichni fayl bo’yicha ixtiyoriy (mumkin bo’lgan chegaralarda) ko’chirish imkonini beradi. Ko’rsatkich bu qandaydir o’zgaruvchi bo’lib, dasturdan murojaat qilish mumkin, va u faylni ochish funktsiyasi (ushbu o’zgaruvchini tashkil etuvchi) bilan bog’liq. 4. Faylni yopish. Bu amal ikkita funktsiya orqali amalga oshirilishi mumkin:
8 1) Faylni yopish va oxirgi qiymatini saqlab qolish. 2) Faylni yo’qotib (o’chirib) tashlash. Fayl yopilgandan so’ng u bilan barcha aloqalar tugatiladi va u kanonik xolatga o’tadi. Download 0.63 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling