Table Of ContentBMB204. Veri Yapıları
Ders 1.
Temel Bilgiler
Erdinç Uzun
NKÜ Çorlu Mühendislik Fakültesi
Bilgisayar Mühendisliği Bölümü
Dersin Hedefi
Mevcut veri yapıları ve veri modellerini anlamak
●
Algoritmaları incelemek, mevcut çözümleri anlamak
●
Bilgisayar yazılım dünyasına ait bazı kavramlar,
●
terimler ve sözcükleri
Bağlantılı liste, ağaç, graf gibi çeşitli veri
●
modellerini
Programların bellek gereksinimi ve çalışma
●
hızlarının hesabını
Arama ve sıralama algoritmalarını
●
Dersin Değerlendirilmesi
• Ara Sınav : %30
• Final : %70
• 4-5 ödev verilecektir. Final sınavında en az 20 puanlık ödev sorusu
sorulacaktır.
• Sınavlarda test soruları olacaktır. (Tüm konulardan soru çıkabilir.)
• Ödevler teslim tarihinden sonra kesinlikle tekrar
gönderim açılmayacaktır.
• Sadece okul e-mailiniz üzerinden gelen postalar
dikkate alınacaktır. Diğer e-mail adreslerinizden veya
sosyal medyadan atılan mesajlar dikkate
alınmayacaktır.
• Uygulama dersi sonunda uygulamalar ADYS
sistemine yüklenmelidir.
Derse Çalışma
Kitaplar
●
C and and Java ile Veri Yapılarına Giriş, Olcay
–
Taner Yıldız, Boğaziçi Üniversitesi Yayınevi
Veri Yapıları ve Algoritmalar, Dr. Rifat Çölkesen,
–
Papatya Yayıncılık
Slaytlar
●
Anahtar Kelimeler (İnternet)
–
http://www.e-adys.com/adys/OpenCourse/
●
İnternet
●
http://en.wikibooks.org/wiki/Data_Structures
–
https://www.cs.auckland.ac.nz/~jmor159/PLDS210/ds_ToC.html
–
http://yzgrafik.ege.edu.tr/~ugur/13_14_Fall/DS/index13.html
–
http://www.mmdemirbas.com/2009/05/
–
Ders Planı
Donanım, Yazılım ve Program
●
Bilgisayar Mimarisi
●
İşletim Sistemleri
●
Veri Yapısı
●
Veri Modeli
●
Algoritma
●
Programlama Dilleri
●
IDE
●
Veritabanı ve SQL
●
Parçala ve Fethet Yöntemi
●
İstemci / Sunucu
●
Kıyaslama
●
Donanım, Yazılım ve Program
Bilgisayarın oluşmasında, çalışmasında kullanılan
●
somut parçaların tamamına donanım ismi
verilmektedir.
Bilgisayar donanımının çalışmasını olanaklı hale
●
getiren programların tamamına yazılım adı
verilmektedir.
Program, bilgisayara verilen komutlar topluluğu
●
olmakla birlikte, bu komutların, bir işi gerçekleştirme
işlemidir.
Yazılım programlar topluluğundan oluşmaktadır.
●
Her bir programın yazılıma ait bir elemandır.
Bilgisayar Mimarisi
Bilgisayar Mimarisi, bilgisayar
●
parçalarının iç yapıları ve aralarındaki
haberleşme bağlantıları ile ilgilidir.
Bilgisayar donanımı, bir bilgisayarı
●
oluşturan fiziksel parçaların genel adıdır.
Mikro kod, mikroişlemcinin komut seti
●
ile yazılmış olan yazılımlardır.
Çevirme Dili (Assembly Language)
●
bilgisayar programlarını yazmak için
kullanılan düşük seviyeli bir
programlama dilidir.
Çekirdek, işletim sisteminin kalbidir.
●
Uygulamalar ve donanım seviyesindeki
bilgi işlemleri arasında bir köprü görevi
görür.
İşletim sistemi (Operating System),
●
bilgisayarda çalışan, bilgisayar donanım
kaynaklarını yöneten ve çeşitli uygulama
yazılımları için yaygın servisleri
sağlayan bir yazılımlar bütünüdür.
İlk bilgisayar mimarisi (Von Neumann)
Bugünkü bilgisayarların mimarisinin
●
modeli ENIAC (Electronic Numerical
Integrator And Computer - Elektronik
sayısal entegreli hesaplayıcı) üzerinde
çalışmış olan John von Neumann
tarafından geliştirilmiştir ve von
Neumann modelinde mantıksal olarak
bilgisayar sistemi tam olarak
tanımlanmıştır.
Bilgisayar sisteminin; bellek, veriyolu,
●
giriş, çıkış ve merkezî işlem biriminden
ibaret olduğu düşünülmüştür.
Von Neumann mimarisine sahip
●
bilgisayarlarda gerçekleştirilen adımlar:
program sayacının gösterdiği
–
adresten komut getirilir,
program sayacı 1 arttırılır,
–
kontrol birimi getirilen kodun
–
komutunu çözer ve tekrar ilk
adıma dönülür.
Harvard Mimarisi
Harvard mimarili
●
bilgisayar sistemlerinde
veri ve buyruklar ayrı
belleklerde tutulurlar.
Komutla beraber veri farklı
●
iletişim yollarını kullanarak
ilgili belleklerden alınıp
işlemciye getirilebilir.
Getirilen komut işlenip
gerekli verisi veri
belleğinden alınırken
sıradaki komut, komut
belleğinden alınıp
getirilebilir. Bu da hızı
arttıran bir etkendir.
Önbellek
Günümüz bilgisayarlarında, ön bellek kullanılarak
●
bellekle tek yoldan iletişim ve buyrukla verinin aynı
bellekte bulunma sorunu çözülmüştür.
Ana bellek ile merkezi işlem birimi arasında görev
●
yapan ve ana bellekten çok daha hızlı olan bir
bellektir.
Bu bellek birimi; işlem esnasında çok sık kullanılan
●
bilgisayar talimatları ve geçici olarak tutulan bilgiler
için bir “yaz-boz tahtası” olarak kullanılır.
CPU ’nun ana bellekten veri alırken harcadığı
●
zamanı azaltır; bu da bilgisayarı hızlandırır.
Description:○Algoritmaları incelemek, mevcut çözümleri anlamak. ○Bilgisayar ○Parçala ve Fethet Yöntemi zamanı azaltır; bu da bilgisayarı hızlandırır.