Swd1316 sintaktik tahlil. Ifodalarning sintaktik tahlili. Parser sinfi. Sintaktik analizatorni yaratish



Download 4,81 Mb.
bet2/7
Sana30.06.2022
Hajmi4,81 Mb.
#720089
1   2   3   4   5   6   7
Bog'liq
DlpeIbHtXYYkEOZob3RzyoNUudZDKQ1ecYsneZ2f

Ifodalarning sintaktik tahlili

  • qurish mumkin. Lekin ko‘p hollarda tez ishlaydigan analizator qurish imkonini beradigan berilgan dasturlash tili asosida grammatika qurish mumkin.
  • Sintaktik tahlillovchi kirish parametrlari - bu leksema va jadvallar ketma-ketligi, masalan, ichki tasvirlangan jadval, bu jadval sintaktik tahlillovchi uchun chiqish parametrlaridir.
  • Sintaktik tahlillovchi chiqish parametrlari – jadvallar va tahlil daraxti hisoblanadi, masalan, kompilyatorning keyingi ko‘rishi uchun chiquvchi bo‘lib hisoblangan identifikatorlar jadvali va tiplar jadvali (masalan, tipli nazoratni amalga oshiruvchi ko‘rinish bo‘lishi mumkin).

Ifodalarning sintaktik tahlili

  • Leksik va sintaktik tahlil bosqichlarining alohida qarashlarga ajratilishi shart emas. Odatda bu fazalar bir xil ko‘rinishda bir-biri bilan o‘zaro ta’sirlashadi. Bunday ko‘rishning asosiy fazasi ajralish fazasi bo‘lib hisoblanadi va sintaktik analizator leksik analizatorga har safar boshqa terminal belgi kerak bo‘lganda murojaat qiladi.
  • Sintaktik tahlillovchi sinflari. Juda ko‘p tahlillovchi algoritmlarni quyidagi ikki sinflarning biriga tegishlidir.
  • top-down algoritmlari (past sathlarga yo‘naltirilgan);
  • bottom-up algoritmlari (yuqori stahlarga yo‘naltirilgan);
  • Past sathlarga yo‘naltirilgan analizatorlar chiqishni qurish uchun grammatika aksiomadan boshlab va terminal simvollar zanjiri bilan tugaydi.

Ifodalarning sintaktik tahlili

  • Past sathlarga yo‘naltirilgan analizatorlar chiqishni qurish uchun grammatika aksiomadan boshlab va terminal simvollar zanjiri bilan tugaydi. Analizatorlar quyidagi xususiyatlarga ega bo‘lgan LL grammatika bilan bog‘liq:
  • u natija bermaydigan analizatorlarga ega bo‘lishi mumkin;
  • birinchi L harfi - kiruvchi zanjirni chapdan o‘nga qarab o‘qilishini bildiradi (left-to-right scan);
  • ikkinchi L harfi - zanjirning chap chiqishi qurilayotganini bildiradi (leftmost derivation).
  • Past sathlarga yo‘naltirilgan analizatorlarni yaratish juda qulay bo‘lib hisoblanadi, ularni qo‘lda ham yaratish mumkin, masalan, rekursiv kamayish usuli bilan.
  • Rekursiv kamayish usuli
  • Rekursiv kamayish usuli – bu eng oddiy va juda ko‘p foydalanilgan past sathlarga yo‘naltirilgan analizatorlarni qurish usuli (recursive descent method).
  • Rekursiv kamayish usuli asosiy tamoyillarini o‘rganish uchun arifmetik ifodalarni bajarilish masalasini qaraymiz. Ularga binar amallari qo‘shish (+), ayrish (-), ko‘pytirish (*), butun bo‘lish (/) va qavslar amallari kirsin. Qo‘shish turidagi amallarga (+) va (-) - amallarini, ko‘paytirish turidagi amallarga esa (*) va (/) - amallari qilib belgilaymiz. Qavslar amali standarti tartibini o‘zgartirish uchun ishlatiladi. Vazifamiz ifoda qiymatini hisoblovchi dastur yozishdan iborat.
  • Qaralayotgan ifodani quyidagi ko‘rinishda bo‘lsin
  • T1 +T2 +…+Tn
  • Bunda Ti - F1i *F2i *…*Fmi ko‘rinishidagi ifoda. SHuningdek, Fji – bu son yoki qavs ichidagi ifoda.
  • Berilgan ifodani hisoblash jarayonini o‘ylab ko‘ramiz, bunda birinchi galda F11 hisoblanadi va F11 dan keyin qaysi amal turganini aniqlanadi. Agar bu ko‘paytirish amali bo‘lsa, chap operandini bilib, o‘ng operandini aniqlaymiz va amalni bajaramiz. SHunday qilib, ko‘paytirish amali uchun chap operandani aniqlaymiz. F1*F2*…*Fn amallar ketma ketligini hisoblab bo‘lgandan keyin, keyingi amal sifatida bo‘lish amalini kelsa, buni ham yuqoridagi jarayon bo‘yicha hisoblaymiz.
  • Rekursiv kamayish usuli

Download 4,81 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish