|
Tizimli dasturlash
|
bet | 6/64 | Sana | 13.05.2024 | Hajmi | 183,36 Kb. | | #230077 |
Bog'liq Системное программирование, практикаTavsiya etilgan o'qish: 1.3.
2-son LABORATORIYA ISHI
Mavzu: Turli formatdagi mashina buyruqlarini tarjima qilish
Ishning maqsadi:
Turbo Debugger bilan ishlash ko'nikmalarini shakllantirish;
i80x86 protsessor buyruq formatlari va operandlarni adreslash usullari bilan ishlash ko'nikmalarini rivojlantirish;
Kodlash buyruqlari bo'yicha qobiliyat va ko'nikmalarni shakllantirish.
Ishni bajarish vaqti - 2 soat.
Nazariy material
Agar taklifga javoban DOS buyruqni yoki bajariladigan fayl nomini (kengaytmasiz) kiriting va tugmani bosing ni kiriting , so'ngra tizim tomonidan qidirish yo'li (buyruq protsessori Kerakli ob'ektning buyrug'i ) quyidagicha bo'ladi.
1.Foydalanuvchining ichki buyruq nomini kiritganligini tekshiradi DOS . Agar ichki buyruq kiritilsa, u bajariladi.
2. Joriy katalog nomi va kengaytmali dastur faylini aniqlash uchun tekshiriladi .com yoki .exe. va shundan keyingina kengaytmali ommaviy ish fayli qidiriladi .bat. Topilgan fayl bajariladi.
3. Paragraflarda sanab o'tilgan narsalarning hech biri bo'lmasa. 1 va 2 topilmasa, tizim Autoexec.ba faylida yozilgan yo'llar bo'ylab qidirishni boshlaydi. (Windows 9x) yoki Autoexec.nt saytida (Windows 2000). Yo'l operatori shunga o'xshash bo'lishi mumkin (farz qilaylik, kompyuter qobiq dasturlarini ham ishlatadi FAR Va Dos Navigator ):
Yo'l= c :\; dan :\windows\command;c\dastur fayllari\far;f:\tasm5\bin;f:\dn Uchun Windows 9x
Yo'l = f:\tasm5\bin;f:\dn uchun Windows 2000
4. Agar tizim buyruqni yoki bajariladigan fayl nomini topmasa, tegishli xabar ko'rsatiladi.
Qidiruv vaqtini qisqartiradi, shu bilan fayl nomi kengaytmasini kiritadi. Agar boshqa narsalar qatorida, to'liq qidiruv yo'li buyruq satrida ko'rsatilgan bo'lsa, u juda soddalashtirilgan.
ENGLISH DASTURI. BUYRUQ LINE VARIANTLARI
Oddiy interaktiv dastur misolida dasturni tarjima qilish jarayonini ko'rib chiqamiz Salom.asm (1-ishning P.1.2-ilovasiga qarang). Fayl yig'ish uchun Salom.asm buyruq qatorida yozing: tasm salom.asm va Enter tugmasini bosing . Ob'ekt fayli uchun boshqa nom ko'rsatmaganligingiz uchun bir xil nomdagi ob'ekt fayli yaratiladi salom.obj . Fayl nomi kengaytmasi ekanligini unutmang. asm Kirish shart emas, chunki TASM sukut bo'yicha buni qabul qiladi. Yoniq ekran Siz ko'rasiz quyidagi :
Turbo Assembler Version 4.1 Mualliflik huquqi (C) 1988,1996 Borland International
Yig'ish fayli: Hello.asm
Xato xabarlari: Yo'q
Ogohlantirish xabarlari: Yo'q
O'tish 1
Qolgan xotira: ***K
Xabar yig'ish xato va ogohlantirishlarsiz yakunlanganligini ko'rsatadi. Ogohlantirish xato emas, lekin uni e'tiborsiz qoldirish bilan ishlashning keyingi bosqichlarida muammoga olib kelishi mumkin dastur, shuning uchun bu turdagi sharhlarga o'z vaqtida javob berish yaxshiroqdir.
Dasturni yaratish uchun buyruq satriga kiriting: tlink hello.obj .
Bu erda, shuningdek, yig'ish paytida, ism kengaytmasi obj ixtiyoriy. Qurilish tugagandan so'ng, fayl yaratiladi salom.exe ekranda ko'rsatilgan xabar bilan.
Turbo Linker versiyasi 7.1. 30.1 Mualliflik huquqi (C) 1987,1996 Borland International
Endi dastur salom.exe bajarilishi mumkin, buning natijasida ekranda quyidagi xabar paydo bo'ladi:
Tushdan keyinmi? (Ha/Yo'q-Y/N)
Javobingiz kiritilishini kutayotganda kursor oxirgi belgidan keyin miltillaydi. Xat kiriting y . Dastur javob beradi:
Salom!
Agar kichik harf kiritilsa n , keyin dastur javob beradi:
Xayrli tong!
Yig'ish yoki ulash jarayonida siz buyruq satridagi variantlar bilan ko'rsatilgan jarayonning turli xil bajarilishini tanlashingiz mumkin. Tasm yoki Tlink . Buyruqlar qatori parametrlarini ro'yxatga olish uchun Turbo yig'uvchi tering tasm va tugmasini bosing ; jamoa bilan ham xuddi shunday qiling tlink .
Variantlar bir yoki bir nechta harflar bilan tavsiflanadi. Variantni belgilash uchun buyruq orasiga qiya chiziq (yoki defis) va tegishli harfni kiriting tasm yoki tlink va siz yig'ayotgan yoki bog'layotgan dasturning nomi. Masalan, dasturni yig'ish uchun Salom.asm va ro'yxat faylini oling (yig'ish jarayoni tavsifini o'z ichiga olgan fayl), buyruqdan foydalaning: tasm/l salom . Variantlar ham katta, ham kichik harflarda yozilishi mumkin. Ushbu buyruqni ishga tushiring va keyin ro'yxat faylini ko'ring Hello.lst matn muharriri yordamida. Ro'yxatda har bir satr raqam bilan boshlanadi, undan keyin ob'ekt kodi baytlari va nihoyat, haqiqiy dastur matni. Bundan tashqari, TASM listing faylida identifikatorlar jadvalini chiqaradi, unda teglar va segmentlar, shu jumladan har bir yorliqning qiymati va turi hamda har bir segmentning atributlari haqidagi ma’lumotlar mavjud. Dasturni yig'ishda siz bitta buyruq satrida bir nechta variantlardan foydalanishingiz mumkin, ularni slash bilan ajratishingiz mumkin. Keling, buyruq uchun bir nechta misollarni ko'rib chiqaylik tasm :
|
| |