Tarjimon Qanday Yoziladi

Mundarija:

Tarjimon Qanday Yoziladi
Tarjimon Qanday Yoziladi

Video: Tarjimon Qanday Yoziladi

Video: Tarjimon Qanday Yoziladi
Video: RUSTILIDA SONLARNI ORGANAMIZ 2024, Noyabr
Anonim

O'ziga xos xususiyatlarga ega bo'lgan ko'plab dasturlash tillari mavjud. Ammo ulardan biron birida yozilgan dastur ishlashi uchun siz uni efirga uzatishingiz kerak. Ba'zan dasturlash tillari o'z ehtiyojlari uchun ishlab chiqiladi (masalan, katta dasturlarda avtomatizatsiyani qo'llab-quvvatlash) va keyinchalik tarjimon yozish kerak bo'ladi.

Tarjimon qanday yoziladi
Tarjimon qanday yoziladi

Kerakli

  • - manba tilining tabiiy grammatikasi yoki BNF;
  • - ishlab chiqish vositalari.

Ko'rsatmalar

1-qadam

Manba tilidagi matnni leksik tahlil qilish uchun ma'lumotlarni tayyorlang. Tildagi barcha tokenlarni sanab o'ting. Ularni toifalarga ajrating (kalit so'zlar, raqamli va qatorli harflar, identifikatorlar, bo'sh joy, punktuatsiya va boshqalar).

2-qadam

Modulni yoki lexerni amalga oshiring. Kirish paytida u "xom" ma'lumotlar oqimini qabul qilishi kerak va chiqishda jetonlarni o'z ichiga olgan elementlarning ro'yxati va ularning turini identifikatorlari manba matnida qanday ketma-ketlikda bo'lishi kerak. Ajralish dasturi juda oddiy bo'lishi mumkin " bir darajali "skaner. Xatolarni tiklashni amalga oshirish mantiqiy emas. Noto'g'ri belgilar xatolar sifatida ko'rib chiqilishi kerak.

3-qadam

Ma'lumotlarni tahlil qilish uchun tayyorlang. Manba tilining tabiiy grammatikasi yoki BNF asosida uning LL1 grammatikasini tuzing. Ushbu turdagi grammatikaga asoslanib, tilning amaldagi tokenlari va semantik konstruktsiyalari toifalari bo'yicha tahlil sxemasini tuzing.

4-qadam

Modulni yoki ajralishni amalga oshiring. Kirish paytida u leksik tahlil qilish bosqichida tayyorlangan jetonlar ro'yxatini olishi kerak. Uchinchi bosqichda o'zingiz yaratgan sxema yordamida rekursiv sintaksisni tekshirish algoritmlarini ishlab chiqing. Agar kerak bo'lsa, xatolarni tiklash mexanizmlarini qo'llang. Funktsiyalarni hisoblash uchun daraxt barpo etish uchun algoritmlarga funktsiyalarni qo'shing, sinf usullari. Algoritmlarni tahlil qilishning to'g'ri tuzilishi bilan ushbu funksiyani muammosiz amalga oshirish mumkin. Bu uni alohida modul sifatida amalga oshirish zarurligini oldini oladi. Yaratilgan ma'lumotlar tuzilmalarida "tekis" ketma-ketlikdagi ko'rsatmalar ro'yxati bo'lishi kerak (stek mashinasida hisoblash uchun mos postfiks shakliga kengaytirilgan arifmetik ifodalar, hisoblash buyruqlari va shartli yoki shartsiz sakrashlar ketma-ketligining kombinatsiyalariga aylantirilgan tsikllar va boshqalar)..

5-qadam

Agar kerak bo'lsa, optimallashtirish modulini yarating. U avvalgi bosqichda tayyorlangan ma'lumotlar tuzilmalarini qayta ishlashi va o'zgartirishi kerak. Optimallashtirish algoritmlari va usullari juda xilma-xildir.

6-qadam

Kod generatorini ishlab chiqing. To'rtinchi yoki beshinchi bosqichlarda tayyorlangan konstruktsiyalarni qayta ishlashda u shunchaki mavhum ko'rsatmalar ketma-ketligini ma'lum bir platformada bajarish bo'yicha ko'rsatmalarga aylantirishi kerak.

7-qadam

Agar kerak bo'lsa, bog'lovchi dastur (bog'lovchi) yarating. Kod segmentlarining joylashishini tanlash, yorliqlarning manzillarini hisoblash va h.k.lar natijasida bajariladigan modulni shakllantirish kerak.

Tavsiya: