Ders Adı | Kodu | Yarıyıl | T+U Saat | Kredi | AKTS |
---|---|---|---|---|---|
Derleyici Tasarımı | BSM 438 | 8 | 3 + 0 | 3 | 5 |
Ön Koşul Dersleri | |
Önerilen Seçmeli Dersler | |
Dersin Dili | Türkçe |
Dersin Seviyesi | Lisans |
Dersin Türü | Seçmeli |
Dersin Koordinatörü | Prof.Dr. NEJAT YUMUŞAK |
Dersi Verenler | |
Dersin Yardımcıları | |
Dersin Kategorisi | Diğer |
Dersin Amacı | Derleyici tasarım aşamalarını inceleyerek otomatik üreteçleri tanıtmak. |
Dersin İçeriği | Derleyici aşamaları, lexical analiz, syntax analiz, semantik analiz, arakod dönüşümü, kod optimizasyonu, kod üretimi |
# | Ders Öğrenme Çıktıları | Öğretim Yöntemleri | Ölçme Yöntemleri |
---|---|---|---|
1 | Dil tasarımlarının gerçekleştirilmesi | Anlatım, Soru-Cevap, | |
2 | Derleyici tasarımları için ön bilgiler | Soru-Cevap, Anlatım, | |
3 | Derleyici araçlarının tesbiti | Soru-Cevap, Anlatım, | |
4 | Sözcüksel, sözdizim ve anlamsal çözümleme | Gezi / Gözlem, | |
5 | Kod optimizsayonu ve kod üretimi | Gezi / Gözlem, |
Hafta | Ders Konuları | Ön Hazırlık |
---|---|---|
1 | Derleme süreci | [1] 1. Hafta Sunusu |
2 | DFA´ların optimizasyonu , Regüler ifadeler | [2] 1. Hafta Sunusu |
3 | Lexical analiz | [3] 1. Hafta Sunusu |
4 | Gramerler | [4] 1. Hafta Sunusu |
5 | Syntax analiz | [5] 1. Hafta Sunusu |
6 | Soyut syntax ağaçları | [6] 1. Hafta Sunusu |
7 | Semantik analiz | [7] 1. Hafta Sunusu |
8 | Ara kod üretimi | [8] 1. Hafta Sunusu |
9 | Ayrıştırma (shift reduce) | [9] 1. Hafta Sunusu |
10 | Ayrıştırma (Recursive descent) First,Follow | [10] 1. Hafta Sunusu |
11 | Kod optimizasyonu | [11] 1. Hafta Sunusu |
12 | Dinamik bellek yönetimi | [12] 1. Hafta Sunusu |
13 | Register atama | [13] 1. Hafta Sunusu |
14 | Kod üretimi | [14] 1. Hafta Sunusu |
Kaynaklar | |
---|---|
Ders Notu | Ders Notları |
Ders Kaynakları | 1. Alfred V. Aho Compilers: "Principles, Techniques, and Tools" (2nd Edition). |
Sıra | Program Çıktıları | Katkı Düzeyi | |||||
---|---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | |||
1 | Matematik, fen bilimleri ve ilgili mühendislik disiplinine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanabilme becerisi. | X | |||||
2 | Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. | X | |||||
3 | Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. | X | |||||
4 | Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. | X | |||||
5 | Karmaşık mühendislik problemlerinin veya disipline özgü araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi. | ||||||
6 | Bilişim Teknolojilerinin yönetim, denetim, gelişim ve güvenliği/güvenilirliği hakkında bilgi sahibi olma ve farkındalık, | ||||||
7 | Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. | ||||||
8 | Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi. | ||||||
9 | Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi. | ||||||
10 | Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi. | ||||||
11 | Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi. | ||||||
12 | Mühendislik uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunları hakkında bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık. |
# | Ders Öğrenme Çıktılarının Program Çıktılarına Katkısı | PÇ 1 | PÇ 2 | PÇ 3 | PÇ 4 | PÇ 5 | PÇ 6 | PÇ 7 | PÇ 8 | PÇ 9 | PÇ 10 | PÇ 11 | PÇ 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Dil tasarımlarının gerçekleştirilmesi | ||||||||||||
2 | Derleyici tasarımları için ön bilgiler | ||||||||||||
3 | Derleyici araçlarının tesbiti | ||||||||||||
4 | Sözcüksel, sözdizim ve anlamsal çözümleme | ||||||||||||
5 | Kod optimizsayonu ve kod üretimi |
Değerlendirme Sistemi | |
---|---|
Yarıyıl Çalışmaları | Katkı Oranı |
1. Kısa Sınav | 5 |
1. Ödev | 95 |
Toplam | 100 |
1. Yıl İçinin Başarıya | 40 |
1. Final | 60 |
Toplam | 100 |
AKTS - İş Yükü Etkinlik | Sayı | Süre (Saat) | Toplam İş Yükü (Saat) |
---|---|---|---|
Ders Süresi (Sınav haftası dahildir: 16x toplam ders saati) | 16 | 3 | 48 |
Sınıf Dışı Ders Çalışma Süresi(Ön çalışma, pekiştirme) | 16 | 3 | 48 |
Ara Sınav | 1 | 8 | 8 |
Ödev | 1 | 8 | 8 |
Final | 1 | 15 | 15 |
Toplam İş Yükü | 127 | ||
Toplam İş Yükü / 25 (Saat) | 5,08 | ||
Dersin AKTS Kredisi | 5 |