Kodni generatsiyalash usullari. Kodni optimallashtirish. Dasturlarning ichki ko'rinishi va ularni shakllantirish usullari

Kodni generatsiyalash usullari. Kodni optimallashtirish. Dasturlarning ichki ko'rinishi va ularni shakllantirish usullari

O'quvchilarga / Informatika va AT
Kodni generatsiyalash usullari. Kodni optimallashtirish. Dasturlarning ichki ko'rinishi va ularni shakllantirish usullari - rasmi

Material tavsifi

Kodni generatsiyalash usullari. Kodni optimallashtirish. Dasturlarning ichki ko'rinishi va ularni shakllantirish usullari Reja: 1. Kodni optimallashning umumiy tamoyillari. 2. Kodni generatsiyalash usullari. 3. Kodni generatsiyalashda «to'rtlik»ni qo'llash Kalit so'zlar. Semantik tahlil Kompilyator Kiruvchi zanjir Operand Funksiyalar Protsedura Parametr 1.Kodni optimallashning umumiy tamoyillari. Optimizatsiya bu foydalirok natijali obyekt dastur olish maqsadida kompyuter dasturidagi amallarning uzgartirish va tartibga solish bilan bog'liq qayta ishlashdir. Optimizatsiya bir necha marta bajarilishi mumkin, kod generatsiyasini tayyorlash fazasi bo'yicha va kodni generatsiyalash fazasi bo'yicha.Natijaviy dasturnning foydalilik ko'rsatkichi bo'lib quyidagi kriteriylardan foydalaniladi: 1)natijaviy dasturning bajarilishi uchun zarur bo'lgan xotira xajmi 2) dasturning bajarilish tezligi. Aylantirishlarni optimallashni ikki asosiy ko'rinishini farqlaydilar: 1) kiruvchi dastur matnini natijaviy obyekt kodiga bog'liq bo'lmagan holda uning ichki tasvirlanishini ko'rinishida aylantirish. 2) berilgan aylantirishlar maqsadli hisoblash tizimining arxitekturasidan bog'liq emas. Ular avvaldan yaxshi tanish bo'lgan matematik va mantikiy aylantirishlarga asoslangan. 3) natijaviy obyekt dasturni aylantirish. Ushbu guruh aylantirishlari maqsadli hisoblash tizimining arxitekturasidan bog'liq. Optimallash quyidagi sintaksis konstruksiyalar uchun bajarilishi mumkin: 1)dasturning chiziqli bo'laklari; 2) mantikiy ifodalar 3)sikllar 4)protsedura fuksiyalarini chakiriklari 2.Kodni generatsiyalash usullari. Kodni ichki yozuvlarining bir xil fragmentlari (postfiks yozuvlari amallari, turtlik va boshqalar) mashina tilining bir xil buyruklarini ifodalaydi. Masalan, kod generatsiyalanayotgan PLUSOP turtlik, agar protsessorda barcha amallar registr-akkumlyator ustida bajarilsa, xar doim quyidagi kodni generatsiyalaydi: LOAD registr , operand 1 ADD registr, operand 2 STORE registr, natija Mashina komandalarining bu ketma-ketligi korrekt, lekin optimal emas. Masalan, quyidagi gap X:=X+Y*Z oltita komanda orqali amalga oshiriladi: LOAD registr, Y (turtlik (MULTOP,Sy,Sz,T1)) MUL registr, Z STORE registr, T1 LOAD registr, X (turtlik ( ADDOP,Sx,T1,Sx)) ADD registr, T1 STORE registr, X Xuddi shuningdek, ushbu natijaga keltiruvchi kuidagi dasturni ko'rish mumkin. LOAD registr, Y MUL registr, Z ADD registr, X STORE registr, X Ushbu usul bilan generatsiyalanayotgan kod xar doim to'g'ri hisoblanadi, lekin xar doim xam optimal emas. Shuning uchun kodni hisoblashlarni anikligiga ta'sir ko'rsatmay turib, uzgartirish imkonini beruvchi qurilmalarga ega bo'lish kerak. Xar bir turtlikka kupgina xollarda yagona mashina komandalari ketma-ketligi mos keladi, kod generatori kupincha xar bir turtlik bo'yicha kismdasturlar to'plami mos keladi. 3. To'rtlik formasi. Kodni generatsiyalashda «to'rtlik»ni qo'llash Postfiks yozuvdan dastur kodini ko'rish mumkin, lekin bunday yozuv formasini optimallashtirish murakkab ish. Kupgina kompilyatorlar dasurning obyekt kodini ko'rish uchun optimallash uchun kulay bo'lgan ichki formalardan foydalanadilar. Generatsiya kilinayotgan kodning eng ko'p tarkalgan ichki tasvirlashni formalaridan biri bu turtlikdir. Turtlik -bu turtta elementdan tashkil topgan obyektdir: amallar, ikkita operand va natijalar. Agar amal bajarish natijasida qandaydir o'zgaruvchini qiymati hisoblansa, u holda bunday turtlikni ko'rish ...


Ochish
Joylangan
Fayl formati zip → doc
Fayl hajmi 12.52 KB
Ko'rishlar soni 119 marta
Ko'chirishlar soni 13 marta
O'zgartirgan san'a: 29.03.2025 | 00:52 Arxiv ichida: doc
Joylangan
Fayl formati zip → doc
Fayl hajmi 12.52 KB
Ko'rishlar soni 119 marta
Ko'chirishlar soni 13 marta
O'zgartirish kiritilgan: Arxiv ichida: doc
Tepaga