GAZİ ÜNİVERSİTESİ BİLGİ PAKETİ - 2019 AKADEMİK YILI

DERS TANIMI
DÜŞÜK DÜZEYLİ PROGRAMLAMA/5061311
Dersin Adı: DÜŞÜK DÜZEYLİ PROGRAMLAMA
Dersin Kredisi: 3 Ders AKTS : 8
Dersin Yarıyılı: 1 Ders Türü : Seçmeli
DERS BİLGİLERİ
 -- DERSİN DİLİ
  Türkçe
 -- ÖĞRETİM ELEMAN(LAR)I
  Doç Dr. Nurettin TOPALOĞLU
 -- ÖĞRETİM ELEMANI WEB SİTESİ/SİTELERİ
  http://websitem.gazi.edu.tr/site/nurettin
 -- ÖĞRETİM ELEMANI E-POSTASI/E-POSTALARI
  nurettin@gazi.edu.tr
 -- ÖĞRENME ÇIKTILARI
Yazılım sistemlerinde programlamanın, programalama dilleri arasındaki Assembly dilinin yerini anlar
Yazılım ve donanım – programcı ve işletim sistemlerini meydana getiren sistem elemanlarının düşük düzeyli ilişkilerine aşina olur
Bilgisayar sistemlerinin ana birimlerini ve x86 tabanlı mikroişlemcilerin yapısını ve mimarisini bilir
BIOS ve işletim sistemi (OS) arasındaki ilişkiyi ve sistemi nasıl yönettiklerini anlar
Bellek yapısını ve adresleme tekniğini bilir. Verilerin bellek birimlerinde saklanma şeklini anlar
Assembly dilinin avantaj ve dezavantajlarını, derleyici, yorumlayıcı ve assembler çalışmalarını açıklar. Tersine mühendislik kavramlarını bilir
Assembly dili komut yapısını ve adresleme türlerini bilir, kesmeler ve sabit disk yapısını bilir. Diskte veri saklama ve okuma yöntemlerini açıklar
Kesmeleri kullanarak ve Assembly dilinde program yazarak sistemi denetler
Assembly dilini şifreleme, cracking, hacking ve antivirüs alanlarında kullanır
Bilgisayar sisteminin gizemli ve görünmeyen yanlarını anlar
 -- DERSİN VERİLİŞ BİÇİMİ
  Bu ders yüz yüze ve uygulamalı öğretim şeklinde yürütülmektedir.
 -- DERSİN ÖNKOŞULLARI
  Bu dersin önkoşulu yada eş koşulu bulunmamaktadır.
 -- ÖNERİLEN DERSLER
  Bu dersle ilişkili olarak, Bilgisayar Mimarisi ve Programlama dersi önerilmektedir
 --DERS İÇERİĞİ
1. Hafta  Dersin tanıtımı, programlama dilleri ve Assembly dilinin yazılım alanındaki yeri
2. Hafta  Yazılım, donanım, işletim sistemi ve programcı ilişkisi
3. Hafta  Bilgisayar sistemlerinin ana birimleri, x86 işlemcilerin yapısı ve mimarisi
4. Hafta  Programcı ve İşletim sistemi arasındaki etkileşim ve haberleşme sistemi
5. Hafta  Assembly dili kavramları, avantaj ve dezavantajları
6. Hafta  Assembly dili ve kullanım alanları
7. Hafta  Ara Sınav
8. Hafta  Assembly dili ile donanım denetimi
9. Hafta  Donanım kaynaklarını etkin kullanımı
10. Hafta  Kesmeler ve BIOS; Ekran, klavye, port ve sabit diskin kesmelerle denetimi
11. Hafta  Tersine mühendislik kavramı
12. Hafta  Assembly dilinin şifreleme, cracking, hacking ve antivirüs alanlarında kullanımı
13. Hafta  Simülasyon ve Hata ayıklama
14. Hafta  Programlama örnekleri
15. Hafta  Programlama örnekleri
16. Hafta  Final Sınavı
 -- ZORUNLU YA DA ÖNERİLEN KAYNAKLAR
  Topaloglu, N., "x86 Tabanlı Mikroişlemci Mimarisi ve Assembly Dili", Seckin Yayınevi, 4. Baskı, Ankara, 2014.  Michael Tischer, PC Intern-PC System Programming, Abacus Software,2004.  Hans-eter Messmer, The Indispensable PC Hardware Book, Addison-Wesley Publishing, 4th edition, 2001.
 -- ÖĞRETİM YÖNTEM VE TEKNİKLERİ
  Anlatım, Soru-Yanıt, Gösterme, Uygulama - Alıştırma
 -- STAJ / UYGULAMA
  yok
 -- DEĞERLENDİRME YÖNTEMİ VE GEÇME KRİTERLERİ
 
Sayısı
Toplam Katkısı(%)
 Ara Sınav
1
60
 Ödev
1
20
 Uygulama
0
0
 Projeler
0
0
 Pratik
0
0
 Quiz
1
20
 Yıliçinin Başarıya Oranı (%)  
40
 Finalin Başarıya Oranı (%)  
60
 -- İŞ YÜKÜ
 Etkinlik  Toplam hafta sayısı  Süre (Haftalık Saat)  Dönem boyu toplam iş yükü
 Haftalık teorik ders saati
16
3
48
 Haftalık uygulamalı ders saati
0
 Okuma Faaliyetleri
11
3
33
 İnternette tarama, kütüphane çalışması
11
3
33
 Materyal tasarlama, uygulama
0
 Rapor hazırlama
1
6
6
 Sunu hazırlama
0
 Sunum
0
 Ara sınav ve ara sınava hazırlık
1
10
10
 Final sınavı ve final sınavına hazırlık
1
12
12
 Diğer
6
8
48
 TOPLAM İŞ YÜKÜ: 
190
 TOPLAM İŞ YÜKÜ / 25 : 
7.6
 DERSİN AKTS KREDİSİ: 
8
 -- PROGRAM ÖĞRENME ÇIKTILARI KATKI DÜZEYLERİ
NO
PROGRAM ÖĞRENME ÇIKTILARI
1
2
3
4
5
1
Alanında edindiği uzmanlık düzeyindeki kuramsal ve uygulamalı bilgileri kullanabilir.X
2
Alanı ile ilgili karşılaşılan sorunları araştırma yöntemlerini kullanarak çözümleyebilir.X
3
Adli Bilişim alanındaki güncel gelişmeleri ve kendi çalışmalarını, nicel ve nitel veriler ile destekleyerek alanındaki ve alan dışındaki gruplara, yazılı, sözlü ve görsel olarak sistemli biçimde aktarabilir.X
4
Adli Bilişim alanının gerektirdiği düzeyde bilgisayar yazılımı ile birlikte bilişim ve iletişim teknolojilerini ileri düzeyde kullanabilir.X
5
Yaşam boyu öğrenmeyi benimser, yeniliğe açıktır, kendisini ve kurumunu geliştirmede etkin rol oynar.X
6
Adli Bilişim ile ilgili yabancı kaynakları izleyebilecek ve meslektaşları ile iletişim kurabilecek düzeyde yabancı dil bilgisine sahiptir (European Language Portfolio Global Scale, Level B2).X
7
Alanında edindiği uzmanlık düzeyindeki bilgi ve becerileri eleştirel bir yaklaşımla değerlendirebilir ve öğrenmesini yönlendirebilir.X
8
Bireysel ve disiplinler arası gruplarda etkin olarak çalışır.X
9
Bilgiye erişmek amacıyla kaynak araştırması yapar, veri tabanları ve diğer bilgi kaynaklarını kullanır, farklı kaynaklardan edindiği bilgilerin doğruluğunu ve güncelliğini değerlendirir.X
10
Adli Bilişim alanı ile ilgili verilerin toplanması, yorumlanması, uygulanması ve duyurulması aşamalarında toplumsal, bilimsel, kültürel ve etik değerleri gözeterek denetleyebilir ve bu değerleri öğretebilir.X
11
Adli Bilişim alanı ile ilgili konularda strateji, politika ve uygulama planları geliştirebilme ve elde edilen sonuçları, kalite süreçleri çerçevesinde değerlendirebilir.X
12
Adli Bilişim alanında özümsedikleri bilgiyi, problem çözme ve/veya uygulama becerilerini, disiplinlerarası çalışmalarda kullanabilir.X
13
Adli Bilişim alanı ile ilgili problemleri belirler, tanımlar, ilgili çözümleri tasarlar, bu amaca uygun analitik yöntemleri ve modelleme tekniklerini seçer ve uygular.X
14
Alanıyla ilgili yenilikçi yaklaşımları takip eder ve uygular.X