შემდგენელი თარგმნებს ერთ ენაზე დაწერილი კოდს (მაგალითად c) ზოგიერთ სხვა ენაზე (როგორიცაა მანქანა ენა) პროგრამის მნიშვნელობის შეცვლის გარეშე. ასევე მოსალოდნელია, რომ შემდგენელმა უნდა მიიღოს მიზნობრივი კოდი ეფექტური და ოპტიმიზაცია დროისა და სივრცის თვალსაზრისით.
ამ სამეურვეო აპლიკაცია ძალიან სასარგებლოა იმისთვის, რომ გაიგოს შემდგენლის შესრულების თეორია და პრაქტიკა. ამ სახელმძღვანელოს მოიცავს შემდგენლის დიზაინის თეორიები, როგორც ლექსიკური ანალიზი, სინტაქსის ანალიზი, სემანტიკური ანალიზი, შუალედური კოდების წარმოება, კოდების ოპტიმიზაცია და კოდების წარმოება. ყველა ეტაპის აღწერა მოცემულია პრეზენტაციის ფორმაში.
ეს გაკვეთილი განკუთვნილია იმ სტუდენტებისთვის, რომლებსაც დაინტერესებული აქვთ სწავლა და გაერკვნენ შემდგენლის ძირითადი პრინციპები. ასევე სასარგებლოა მათთვის, ვინც დაინტერესებულია შემქმნელის დიზაინით. თითოეული ეტაპი მარტივად აღწერს მაგალითებს.
ამ სახელმძღვანელოს მოითხოვს პროგრამირების ენის რამდენიმე ძირითადი ცოდნა, როგორიცაა c, java და ა.შ.
Მახასიათებლები:
1. თემა / თავი ბრძნული გაკვეთილი.
2. თითოეული თემის სუბტროპიკული ბრძნული გაკვეთილი.
3. ასევე შეიცავს ჩემს მიერ მომზადებულ YouTube- ის ვიდეო ბმულებს.
4. კითხვის ბანკი.
5. შეავსეთ ხაზგარეშე შენიშვნები სლაიდში.
თემები:
1. შემდგენლის დიზაინი: შესავალი
2. ჩატვირთვა
3. ლექსიკური ანალიზი: რეგულარული გამოხატვა, ტომპსონის კონსტრუქცია
4. სინტაქსის ანალიზი: ზემოდან ქვემოთ და ქვემოთ მოთავსება
5. ზემოდან დაქვეითება: პროგნოზირებადი გაანალიზება (LL პარასინგი)
6. ქვედა გაანალიზება: მარტივი LR (SLR), გამოიყურება წინ LR (LALR)
7. სემანტიკური ანალიზი
8. შუალედური კოდის წარმოება: სამ მისამართის კოდი
9. კოდის ოპტიმიზაცია: ძირითადი ბლოკები
10. კოდების წარმოქმნა: ალგორითმი, getreg () ფუნქცია