You are on page 1of 10

Bilgisayar Bilimleri

Bilgisayar bu kadar çok veriyi nasıl depolar? Nesneler birbirleriyle nasıl iletişim kuruyor?

En yüksek bellek kapasiteli bilgisayarın Bir makine insandan daha çabuk


hafızası ne kadar? öğrenebilir mi?

Yazılımlar da arabalar gibi bakıma girer mi? Programlama dili ile konuşma dilinin
farkları nelerdir?
Yazılım üretmek mi daha zor yoksa onu Web sitesi nasıl tasarlanır?
test etmek mi?

Bilgisayar, kendisine programlama yoluyla komuta edilmiş bir dizi aritmetik ya da mantık işlemini

otomatik olarak yapabilen bir makinedir. Günümüz bilgisayarları, program adı verilen

genelleştirilmiş işlem kümelerini izleme yeteneğine sahiptir. Bu programlar, bilgisayarların çok

çeşitli görevleri yerine getirmesini sağlar. Tam işletim için gerekli olan ve kullanılan donanım,

işletim sistemi (ana yazılım) ve çevresel ekipman bir bilgisayar sistemini oluşturur.

8
Ayrık Matematik

1 Önermeleri ifade edelim.

Doğruluk Tablosu
Örneği
Doğru ya da yanlış olan bildirim cümlesine Gottfried Leibniz
önerme adı verilir. (1646-1716)

Çarklı hesaplayıcıyı ilk


tanımlayan insan oldu
ve aritmometre ilk
toplu üretilen mekanik
Koşullu önerme bağlayıcısı → sembolü ile ifade edilir. hesaplayıcı
Koşullu önermenin normal dildeki karşılığı “eğer” dir. kullanarak Leibniz
çarkını icat etti.
Örneğin;
Ayrıca ikili sayma
p : Kahvaltı yaparım. sistemini
rafineleştirdi, bu
q: Öğlen yemeği yemem.
çalışması tüm dijital
p → q : Kahvaltı edersem öğlen yemeği yemem. hesaplayıcıların soyut
temelini oluşturdu.
Siz de kendi
hayatınızda
2 Totoloji
kullandığınız
önerme örnekleri
Doğruluk değeri her zaman 1 olan (doğru/true)
veriniz.
önermelere totoloji denir.

Örneğin; “İnsanlar canlıdır” önermesi bir İki önerme, kendilerini oluşturan bileşenlerin
totolojidir. tüm doğruluk değer kümesi için aynı doğruluk
değerine sahipse, bu iki önerme mantıksal
eşdeğerdir.

İki basit önerme aralarına “ve” kelimesi Veya kelimesi birden fazla önermeyi
konarak birleştirilebilir. Bunun sonucunda birleştirmek için kullanılabilir. Bunun sonucunda
oluşan bileşke önermeye iki basit önerme oluşan bileşke önerme iki basit önermenin
bileşeninin kesişimi denir. Eğer p ve q iki birleşimi olarak adlandırılır. Eğer p ve q iki
basit önerme ise p ∧q ise p ve q basit önerme ise p ˅q ise p ve q önermelerinin
önermelerinin kesişimini ifade eder. birleşimini ifade eder.

9
Bilgi Teknolojileri

1 Bilgisayar tarihçesi

İlk elektronik temelli bilgi işlem birimi ENIAC’tır. William Oughtred


(1574-1660)
Doğrudan çarpma ve
bölme yapmak için
gerekli işlemleri
bulan ilk matematikçi
ünvanına sahiptir.
Öncelikle çarpma ve
bölme için
İlk bilgisayarlar askeri alanda faaliyet göstermişlerdir. kullanılmış, daha
sonra kök alma,
Günümüz bilgisayarlarınca da temel alınan mimari, Von logaritma ve
Neumann tarafından ortaya konmuştur. trigonometrik
fonksiyonların da
Bilgisayarlardaki birincil depolama birimleri RAM ve
hesaplanabildiği
ROM’dur.
sürgülü cetveli icat
Günlük bilgisayar
kullanımınızda en çok
2 Dosya uzantıları kullandığınız kısayol
tuşları nelerdir?
Paint programının dosya uzantısı nedir?

Office Word .doc, .docx


Office Excel .xls, .xlxs 1. Kontrol Tuşları (Ctrl, Alt, AltGr,
Office Powerpoint .ppt, .pptx Enter, Tab, Shift, Print Screen...)

Resim (Paint) .jpg, .png, .jpeg


2. Kilitleme Tuşları (Num Lock, Caps Lock,
Video .mp4, .mov, .avi Scroll Lock, Pause, Break...)

Bunları da bilelim!

F1: Yardım, F2: Seçili olan dosyayı yenidenShift: Büyük-küçük harf, üst karakterler, Alt
adlandırmak, F3: Windows dahil olmak üzereGr: Tuşların sağ altındaki karakterler, Windows
pek çok programda arama özelliğini açmak, F4:Logo: Başlat Menüsü, Ctrl + Esc: Başlat Menüsü,
Dizin bulmayı açmak, F5: Bütün internetAlt: Ana menüyü seçmek ve diğer tuşlarla
tarayıcılarda sayfayı yenilemek için kullanılır. menüleri açmak için kullanılmaktadır.

10
C Programlama Dili

1 Girdi işleme ve çıktı

C programlama dilinde ekrana yazma komutu


“printf(“”);” tir. Örneğin; printf(“yazı”);

Dennis Ritchie
(1941-2011)
C programlama dilini
ve UNIX işletim
sistemini yazan
bilgisayar
Klavyeden değer okuyan komut “scanf(“”)” tir. mühendisidir. Ayrıca
Tamsayı değeri okumak için %d, harf okumak için %c C Programlama Dili
sembolleri kullanılır. #include <stdio.h> /* Başlık kitabının da
dosyasını programa eklemeyi, int main(void) /* Ana yazarlarından biridir.
fonksiyon bildirimini, */{printf("C Programlama Dili"); Bu dil, bugün hala
/* Ekrana bir karakter dizisi yazmayı, */ return 0; /* bilgisayar
Programın normal bir şekilde sona erdiğini gösterir. */ } yazılımlarında aktif
olarak
kullanılmaktadır. C++,
<stdio.h> başlık
2 Temel bilgiler dosyasını programımıza
C'de, # karakteri ile başlayan satırlar önişlemci dahil

direktifi olup, program derlenmeden önce, önişlemci ederek, printf() fonksiy


tarafından işlem yapılır. Yukarıdaki satırda onu ile ekrana yazı

kullanılan #include önişlemci direktifi, sağ tarafında yazdırın.


yer alan <stdio.h> adlı başlık dosyasını programa dahil Program yazarken karşılaşılabilecek hatalar
eder. Böylece, <stdio.h> başlık dosyası içeriği program iki ana başlık altında incelenir. Derleme
içinde yazılmış gibi kullanılabilir hale gelir. Hatası (Compilation Error) ve Çalışma
Zamanı Hatası (Runtime Error)

Genel değişkenler tüm fonksiyonların dışında


Programdaki her bloğun ve fonksiyonun
bildirilirler. Program içindeki blok ve
içinde kendi yerel değişkenleri
fonksiyonların hepsine aittir ve program
tanımlanabilir. Bloğun içindeki tüm işlemler
çalıştığı sürece bellekte saklanır. Herhangi bir
sonlandığında yerel değişkenler bellekten
blok veya fonksiyon tarafından çağrılıp
silinir. Yerel değişkenler farklı bloklarda
kullanılabilirler. Değerleri en son değiştirilmiş
kullanılamazlar.
olan değer olarak ele alınır.

11
Çizge Kuramı

1 Çizge kuramına giriş

Leonhard Euler
Soldaki şekilde ev şeklindeki çizgede 5 tepe
(1707-1783)
noktası ve 8 ayrıt bulunur.
Çizge teorisi
çalışmasını kuran
İsviçreli bir
matematikçi, fizikçi,
astronom,
coğrafyacı, mantıkçı
Çizgeler (Graflar) tepe noktalarından ve onları birleştiren ve mühendisti.
ayrıtlardan (çizgilerden) oluşur. Topoloji ve analitik
Eğer tepe noktalarını birleştiren ayrıtlar yönlü olarak sayı teorisi, karmaşık
verilirse bu kenarlara yönlü kenarlar denir. analiz ve sonsuz
küçük hesap gibi
Bir tepe noktasının derecesi, o noktaya bağlanan ayrıtların birçok matematiksel
toplam sayısını ifade eder. alanda öncü ve etkili
keşifler yaptı.
Hangi tür gündelik
yaşam sorunlarını
2 Tepe noktası dereceleri grafiklerle
modelleyebiliriz?

Bir G çizgesinin tepelerinin ve ayrıtlarının

Tepe noktaları: A, B, C, D, E, F, G ve H noktalarıdır. herhangi bir altkümesini aldığımızda oluşan

yeni çizgeye G çizgesinin alt çizgesi denir.


A, C tepelerinin derecesi 2, B tepesinin 3, diğerleri 1’dir.

Bağımsız küme problemi, yerleştirme (depolama) Bir G çizgesini bağlantısız veya sadece izole
problemlerinin çözümünde kullanılır. Bağımsız tepelerden oluşan bir çizge haline getirmek için
kümeyi bulan birçok algoritma mevcuttur. çizgeden çıkarılması gereken en az tepe sayısına
Bunlardan en önemlisi Paull-Unger çizgenin tepe bağlantılılık sayısı denir.
algoritmasıdır.

12
Veri Yapıları

1 Çalışma zamanı analizi

Bir dizinin sayılarının toplamını bulan bir


programın çalışma zamanını T(n) belirleyiniz. Alan Newell
(1927-1992)
Amerikalı bilişim
araştırmacısıdır. RAND
Corporation ve Carmegie
Mellon Üniversitesi’nde
çalışmıştır. Bağlı liste
veri yapılarını
keşfetmiştir. 1975
İlk satırdaki atama işlemi birim zamanda gerçekleşir. (1)
yılında Turing ödülünü
almaya hak kazanmıştır.
Döngü N tane 2 işlem yapar ve son işlemde birim zamanda (1)
Yapay zeka uygulaması
yapılır.
olan Logic Theory
T(n) = 1 + 2*N + 1 = 2N + 2 zamanda gerçekleşir. Machine’i geliştirmiştir.

2 Bağlı listeler Günlük hayatta kuyruk


(Queue) veri yapısı
Bağlı listeler dinamik veri yapılarıdır. Bu yüzden klasik kullanımına örnekler
Array’lerden farklıdırlar. Buradan anlıyoruz ki bağlı veriniz.
listelerin boyutları dinamik olarak değişebilmektedir.
Diziler gibi sabit değerli olmadıkları için de
kullanılmadıkları durumlar için bellek israfına yol Günlük hayatta listeler; alışveriş listeleri,
açmazlar. Her bağlı listenin root isminde bir kök davetiye, telefon listeleri vs. kullanılır.
göstericisi olmak zorundadır. Programlama açısından liste; aralarında
doğrusal ilişki olan veriler topluluğu olarak
görülebilir.

Diziler(arrays), doğrusal listeleri Dizi elemanları arasında başka elemanlar


oluşturan yapılardır. Doğrusal listelerde bulunamaz. Diziye eleman eklemek gerektiğinde
süreklilik vardır. Dizi veri yapısını ele (dizinin sonu hariç) dizi elemanlarının yer
alırsak, bu veri yapısında elemanlar aynı değiştirmesi gerekir. Dizi, program başında veya
türden olup bellekte art arda saklanırlar. sonradan tanımlanabilir. Dizi elemanları karakter,
Dizinin boyutu sabit veya değişken tamsayı veya kesirli sayılardan oluşabilir.
olabilir.

13
Nesne Tabanlı Programlama

1 C# dilinde örnekler

C# dilinde Console.Read() komutu klavyeden değer Alan Key


(1940-…)
okumak için, Console.Write() komutu ise ekrana
Amerikalı bilgisayar
değer yazmak için kullanılır.
bilimcisidir. Nesne
yönelimli programlama
ve pencere sistemi
konulu çalışmalarıyla
ün kazanmıştır. Key,
2003 yılında Turing
ödülünü almaya hak
kazanmıştır. Colorado
Nesne tabanlı programlama, mantıksal işlemlerden ziyade Üniversitesi’nin
nesneye odaklanır. Programlar nesnelerin birbirleriyle Matematik ve
etkileşime geçmeleri sayesinde tanımlanır. Moleküler Biyoloji
bölümlerinden mezun
olmuştur.

Nesne tabanlı programlama


dillerinin fonksiyonel dillere
2 Do While döngüsü göre sağladığı kolaylıklar
(0-10) arası sayıları do-while döngüsü kullanarak nelerdir?
ekrana yazan C# kodu.

int i=0; Değişkenlerde aynı anda tek değer


do saklanabilir. Fakat bazı durumlarda birden
{ Console.WriteLine(i); i++; } fazla verinin saklanması gerekir. Bu durumda
While(i<10); aynı veri türünde verilerin saklanabileceği
dizi tanımlaması yapılır.

Dizinin elemanlarına ulaşmak için indis Sort() metodu: Dizi sınıfına ait olan metot
değerlerini kullanırız. İlk elemanın indisi her sayısal veri tipine sahip ise küçükten büyüğe
zaman sıfırdır. Dizilere değer atamak için köşeli doğru, alfa-sayısal veri tipine sahip dizilerde
parantezler içerisine dizinin kaçıncı elemanına ise A’dan Z’ye sıralama yapar. En sık kullanılan
değer atılacaksa, indis numarası olarak o yazılır. hazır fonksiyonlardan biridir.

14
Veritabanı

Sağda Veri toplama


1 verilen excel
veritabanında 4 satır ve
4 sütundan oluşan toplam Veritabanları kullanılma sebepleri: Veri
16 veri bulunur. C8 ve C9 Herhangi bir veri toplayan ve kaydeden bir sistemi
bağımsızlığı, Uygulama geliştirme,
Edgar Codd Veri
hücrelerinde notların inceleyiniz. Topladığı verileri bütünlüğü
ve bu verilerin
ve güvenliği, (1923-2003)
Tektip veri
cinsiyetlere göre özelliklerini belirtiniz. yönetimi, Veri paylaşımı,İngiliz
Eş zamanlı bilgisayar
erişim,
toplamları verilir. Yedekleme ve Kurtarma bilimcisidir. IBM’de
çalıştığı sırada
Algılama aklınızın içindedir, onu dile getirirseniz Veritabanı yönetim sistemi, veriveri
ilişkisel yapılarını
modelini
bilgiye dönüşür. Başkasının algılama biçimine tanımlar, ilişkili verileri toplar, veriler
tanımlayarak çağdaş
sahip olamazsınız. Veritabanı kullanıcıları, üzerinde işlem yapar, veritabanı
tutarlılık sağlar,
yönetim
Bu verileri niçin
tasarımcı, saklıyor?
yönetici, son kullanıcı, sistem uzmanı yanlış kullanımı önler, sistemlerinin
kullanıcıları ve
ve programcıdır. SQL deyimleri, veritabanları yetkilerini belirtir, eş zamanlı erişim sağlar.
temellerini atmıştır.
Verileri sakladığı
üzerinde dijital
işlemleri yerineortam nedir? (Sayısal, resim, video, metin
getirirler. Oxford
vs.)
Üniversitesi’nde
okumuş ve 1981’de
Günlük, haftalık, aylık ve yıllık olarak ortalama hangi boyutta veri
Turing ödülünü
sakladığını belirtiniz. (5KB, 2GB, vs…)
almaya hak
Bir ortaokul öğrencisi
için oluşturulan
2 Excel basit veritabanı veritabanında hangi
veriler saklanabilir?

15
İşletim Sistemleri

1 Proses (Süreç)

Bir Proses hangi durumlarda oluşturulur? Gary Killdall


(1942-1994)
Microcomputing
öncülerinden biridir.
İlk işletim sistemini
geliştirmiştir. İlk
işletim sistemleri
Önce 8 bit
bilgisayarlar için
piyasaya sürüldü, daha
Bir işlemi gerçekleştirmek için ardışık bir program parçasının
sonra 16 bit
yürütülmesiyle ortaya çıkan işlemler dizisine proses denir.
bilgisayarlara taşındı.
Kullanıcı sisteme girdiği zaman veya bir hizmet sunmak için
Günümüzde kişisel bir
(Örneğin; yazıcıdan çıktı almak) oluşturulur. bilgisayar, özelliklerini
Gary Kildall'a
borçludur.

En popüler işletim
sistemleri Windows,
2 İplikler (Threads)
Linux ve MAC’tir.
İplikler hangi kaynakları paylaşırlar?

İplikler hafif proses parçalarıdır. İplikler adres


uzayı, bellek ve açık dosyaları kaynak olarak Semafor, birden fazla prosesin eş zamanlı
paylaşırlar. Ayrıca global değişkenleri de çalışması halinde kritik zamanlarda
paylaşabilirler. Her bir ipliğe özel sağlayıcılar, birbirlerini beklemesini sağlayan bir
mekanizmadır. Sadece 0 veya 1 değerini
program sayacı ve yığın bulunur.
alabilen semaforlara ikili semafor adı

Semafor ile ilgili tutulan bilgiler: Semaforun değeri, Sistem, proses yanlış bir işlem yürüttüğünde ona
semaforun sıfır olmasını bekleyen proses sayısı, semaforun bir sinyal gönderir. Kullanıcı, tuş takımını
değerinin artmasını bekleyen proses sayısı, semafor üzerinde kullanarak prosese sinyal gönderebilir. Bir
işlem yapan son prosesin kimliği (pid) şeklindedir. Semaforun proses başka bir prosese kill() sistem çağrısı
içerisinde yapılan birden fazla iş, program tarafından sanki ile sinyal gönderebilir.
tek bir iş gibi algılanmalı ve araya başka işin girmesine izin
verilmemelidir.

16
Yapay Zeka

1 Yapay zekaya giriş

Turing testi nedir? Nasıl uygulanır? John McCarthy


(1927-2011)
Amerikalı bilgisayar
bilimcidir. Yapay zeka
terimini ve LISP
programlama dilini icat
edenlerden biridir.
ALGOL dil yapısını
önemli ölçüde
Turing testinin amacı, bir makinenin düşünebildiğini söylemenin etkilemiştir. Zaman
mantıksal yoludur. Turing testine göre, makine gönüllü bir paylaşımı yöntemini
insanla birlikte sorgulayıcının görüş alanının dışında bir yere yaygınlaştırmış ve çöp
saklanır. Sorgulayıcı, makineyi insandan ayırmaya çalışır. toplama metodunu icat
İnsanın ve doğanın zeka gerektiren davranış ve özelliklerini etmiştir.
taklit eden zeki bil-
gisayar sistemlerini tasarlamak yapay zekanın işlevidir. Karınca kolonisi
algoritması, bir
genetik algoritmadır.
2 Benzerlik ölçümleri Siz de bir genetik
Benzerlik – Uzaklık ölçüm tekniklerine örnekler algoritma
veriniz. örneği veriniz

Benzerlik-uzaklık ölçüm yöntemleri, verilerin birbirine


Genetik algoritmalar doğal yaşam sürecini
ne kadar benzediğini sayısal olarak ortaya koyar. taklit ederek çalışan ve optimizasyon
Birbirinin aynısı olan veriler arası uzaklık 0 olmalı ve problemlerinde sıklıkla başvurulan bir arama
farklılaştıkça bu değer artmalıdır. Örnek: Öklid, yöntemidir. En etkili çözümlerin tamamının
Jackard. taranması mümkün değildir.

Bir sinir ağı, insan beynine dayalı bir Girdiler, proses elemanına bilgi
çıkarım mekanizması olarak tanımlanabilir. getirmektedir. Bu bilgi, diğer proses
Yapay sinir ağları, birbirine paralel bağlı elemanları veya dış kaynaktan sağlanabilir.
basit elemanlar ile biyolojik sinir Bazen proses elemanı kendi kendine bilgi
sistemlerinin yaptığı etkileşimin bir verebilir. Girdi ağırlıkları, bilginin etkisini
uyarlamasıdır. ifade eder.

17

You might also like