|
Tizimli dasturlash
|
bet | 3/64 | Sana | 13.05.2024 | Hajmi | 183,36 Kb. | | #230077 |
Bog'liq Системное программирование, практикаIshning maqsadi : assembler dasturini tuzish jarayoni, uni olish jarayoni va EMU 8086 emulyatorining asosiy imkoniyatlari bilan tanishish.
Ishlash vaqti 2 soat
Nazariy material
Har bir dasturlash tili o'ziga xos xususiyatlarga ega. Assembly tili ham bundan mustasno emas. An'anaga ko'ra, birinchi dastur ekranda xush kelibsiz xabarni ko'rsatadi ' Salom Dunyo '.
Ko'pgina zamonaviy dasturlash tillaridan farqli o'laroq, montaj dasturida har bir buyruq Alohida LINEda joylashgan. Bir qatorga bir nechta buyruqlarni joylashtira olmaysiz. Bitta buyruqni bir necha qatorga bo'lish ham odatiy hol emas.
Assembly tili katta-kichik harflarni sezgir. Bular. ko'p hollarda katta va kichik harflar o'rtasida farq yo'q. Buyruq DIRECTIVE - tarjimonga ko'rsatma bo'lishi mumkin. Ular dasturni mashina kodiga aylantirish jarayonida amalga oshiriladi. Ko'pgina direktivalar davr bilan boshlanadi. Dasturni o'qishni osonlashtirish uchun ular odatda BOSH HARFLAR bilan yoziladi. Direktivlardan tashqari INSTRUCTIONS - protsessorga buyruqlar ham mavjud. Aynan ular dasturning mashina kodini tuzadilar.
Shuni ta'kidlash kerakki, "mashina kodi" tushunchasi juda o'zboshimchalik bilan. Ko'pincha bu oddiygina bajariladigan faylning mazmunini bildiradi, u haqiqiy mashina buyruqlariga qo'shimcha ravishda ma'lumotlarni saqlaydi. Bizning holatda, bu ko'rsatilgan "Salom" xabarining matni bo'ladi.
TASM va MASM yordamida DOS muhitida assembler dasturini yaratish xususiyatlari
Assembly tili eng past darajadagi dasturlash tilidir. Bular. u kompyuter arxitekturasi va uning apparat imkoniyatlariga boshqalardan ko'ra yaqinroq bo'lib, ularga to'liq kirish imkonini beradi. Yuqori darajali tillardan (HLL) farqli o'laroq, montaj dasturi faqat PROGRAMMER tomonidan kiritilgan kodni o'z ichiga oladi. Qo'shimcha "kayışlar" yo'q. Kodning "mantig'i" uchun barcha mas'uliyat DASTURCHI tor yelkasida TO'LIQ.
Oddiy misol. Odatda, pastki dasturlar qaytish ko'rsatmasi bilan tugaydi. Agar u aniq ko'rsatilmagan bo'lsa, tarjimon uni pastki dasturning oxiriga qo'shib qo'yadi. Qaytish buyrug'i bo'lmagan yig'ish pastki dasturi qo'ng'iroq nuqtasiga QAYTIB EMAS, lekin quyi dasturdan keyingi kodni xuddi uning davomi kabi bajaradi. Yana bir misol. Kod o'rniga ma'lumotlarni "bajarish" ni sinab ko'rishingiz mumkin. Ko'pincha bu mantiqiy emas. Ammo dasturchi buni qilsa, tarjimon jim qoladi. Assambleya tili hamma narsani qilishga imkon beradi! Bu erda hech qanday cheklovlar yo'q. Ammo boshqa tomondan, bu ko'pincha xatolar manbai.
Bu xususiyatlar yig'ish dasturlari ko'pincha kompyuterni, ayniqsa yangi boshlanuvchilar uchun "osib qo'yishiga" olib keladi.
Keling, u bilan kurashish usuliga ko'ra, "muzlatish" ning uchta turini ajratib ko'rsatamiz.
* Oddiy - undan chiqish uchun Ctrl+Break yoki Ctrl+C tugmalarini bosish kifoya (avval Ctrl tugmachasini bosing va uni qo'yib yubormasdan ikkinchi tugmani bosing - C yoki Break; teskari tartibda chiqariladi). Dastur DOSga chiqish bilan anormal tarzda tugaydi.
* Yumshoq - mashina Ctrl+Break tugmalariga javob bermaydi, lekin klaviatura “nafas oladi”. Bular. NumLock kabi tugmalarni bosganingizda, tegishli LEDlar miltillaydi. Bunday holda, Ctrl+Alt+Del tugmalarini bosib, mashinani qayta ishga tushirish kerak bo'ladi. Windows muhitida siz shunchaki oynani yopish orqali seansni "o'ldirasiz".
Qattiq - mashina klaviaturaga hech qanday tarzda javob bermaydi va Ctrl+Alt+Del kombinatsiyasini qabul qilmaydi. Bunday holda, tizim blokining old panelida joylashgan "Qayta tiklash" tugmasi yordamida apparatni qayta tiklash yordam beradi. Kompyuterni o'chirish va yoqishning hojati yo'q. Siz, kelajakdagi apparat ishlab chiquvchilari sifatida, u asosan yoqilganda va o'chirilganda muvaffaqiyatsiz bo'lishini bilishingiz kerak.
|
| |