Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
ìProgramlama TemelleriDers notları 1
Öğr.Gör. Hüseyin Bilal MACİT2017
Bilgisayar nedir?
ì Bilgisayar,kullanıcıdanaldığıverilerlemantıksalvearitmetikselişlemleriyapan;yaptığıişlemlerinsonucunusaklayabilen;sakladığıbilgilereistenildiğindeulaşılabilenelektronikbirmakinedir.
ì Öncedenbelleğineyüklenmişbiryazılımilekendisineverilenkomutlaragöre,verilenverileriişleyereksonuçlarüretir.
ì Buişlemleriinsandandahahızlıyapabildiğiiçinbilgisayarkullanımıhızlayaygınlaşmıştır.
ì Günümüzbilgisayarları,milyarlarcakarmaşıkişlemisaniyeleriçindeyapabilecekkadarhızlıdır.
Bilgisayarın tarihçesi
ì Bilgisayarıngelişiminin,günümüzden5000yılönceabaküsünbulunmasıilebaşladığısöylenebilir.İnsanoğluilkdefaabaküskullanarakbiraraçyardımıilesayılarısaymayabaşlamıştır.
ì 1642yılındaBlaise Pascal,vergitoplayıcısıolanbabasınayardımedebilmekiçinilkbasithesapmakinesiniicatetmiştir.Üzerindesayılarolanbubasitmakine,hesapmakinelerininatasısayılır.Pascal’ın geliştirdiğibuhesapmakinesininadıPascaline’dır. ì Pascaline
Bilgisayarın tarihçesi
ì 1673yılınagelindiğindeAlmanGottfriedWilhelmvon Leibniz,Pascaline’ıgeliştirerekçarpmaişlemideyapabilenbirmakinehalinegetirmiştir
ì 1820yılındaFransızCharlesXavier ThomasdeColmar,dörtişlemyapabilenbirhesapmakinesiicatetmiştir.Colmar’ın icatettiğimakineninüzerindeçalışılarak‘Arithometer’adıverilenmekanikhesapmakinelerikullanılmayabaşlanmıştır.
ì Leibniz
Bilgisayarın tarihçesi
ì GünümüzdeanladığımızişleviylebilgisayarmantığınıntemeliniilkolarakİngilizmatematikprofesörüCharlesBabbage ortayaatmıştır.1832yılındaBabbage,DifferenceEngine’adınıverdiğidiferansiyeldenklemçözümüyapabilenmakineyigeliştirmeyidüşünmüştür.Lokomotifbüyüklüğündevebuharlaçalışanbumakineyi,programlarısaklayabileceğivehesaplamalarıyapıpçıktıalabileceğibirdüzenekteçalıştırmayıtasarlamıştır.10yılsürençalışmalarınsonundabuülküsüneulaşamamıştır,ancakozamandüşündüğüyapıbugünbizimkullandığımızbilgisayarlarınişlevinetıpatıpbenzemektedir.
ì Difference Engine
ì (Babbage)
Bilgisayarın tarihçesi
ì 1801yılındaJoseph-MarieJacquard,deliklitahtayı(punch board)tasarlayarakeldekiverilerinbutahtayabasılıpsaklanmasıfikriniortayaatmıştır.BufikirdenyararlanarakBabbage,‘AnalitikMakine’adıverilengenelamaçlıkullanımıolabilecekbirmakinegeliştirmiştir.
ì 1890yılında,AmerikalımucitHermanHollerith,Jacquard’ın deliklitahtabuluşunudahahızlıbaskıyapabilenbirmakinedegeliştiripkullanmıştır
ì Tabulator (Hollerith)
Bilgisayarın tarihçesi
ì Tabulator’denenbumakineileilkişolarakAmerikaBirleşikDevletleri’ndenüfussayımıyapmayıplanlamıştır.Eskiyöntemleregörenüfussayımı10yıldatamamlanırken,Hollerith’in buluşuilesayım6haftadabitmiştir.
ì Hollerith,önce‘TabulateMachineCompany’,dahasonra1924yılında‘InternationalBusinessMachines’(IBM)adıaltındabirfirmakurarakkendideliklikartokuyucusunuişdünyasıyladatanıştırmıştır.
ì Tabulator (Hollerith)
1. nesil bilgisayarlar (1945 - 1956)
ì Budönem1945-1956yıllarıarasınıkapsar.Birincinesilbilgisayarlarıdiğerdönemlerdenayıranözellikler,vakumtüplerininbulunmasıilevanaveteldevrelerdenoluşmasıdır.Budöneminbilgisayarlarındaelektrikakımı,vakumtüpleriaracılığıyladenetlenmektedir,verilerisaklayabilmekiçindemanyetikdavullarbulunmaktadır.
ì Bubilgisayarlarözelişlemleryapmalarıiçinüretildiklerinden,kullanımalanlarıdasadecebuözelişlemlerinyapılmasıylasınırlıkalmıştırveçalışmalarıçokyavaştır.
2. nesil bilgisayarlar (1956 - 1964)
ì 948yılındatransistörün icadıilebilgisayardünyasındailerlemelermüthişbirivmekazanmıştır.Transistörler,ilkdefa1956yılındabilgisayarlardakullanılmayabaşlanmıştır.Budöneminenbelirginbuluşu,transistörlerin vakumtüplerininyerinialarakmakineboyutlarınınküçülmesini,birincinesilmakineleregöredahahızlıçalışmasınısağlamasıvemakinedilininyerineprogramlamadillerinegeçilmişolmasıdır.Makinedilindekullanılan‘Assembly’yerine,uzunvezorolanikili(binary)kodlarıikincinesilbilgisayarlarlabirlikteprogramlamadilinedönüştürülmüştür.Böylecebirincinesildekilergibiheramaçiçinmakineüretmekyerine,heramaçiçinprogramyazılmayabaşlanmıştır.‘COBOL’ve‘Fortran’dilleribudönemdegeliştirilmiştir.
2. nesil bilgisayarlar (1956 - 1964)
ì 1948yılındatransistörün icadıilebilgisayardünyasındailerlemelermüthişbirivmekazanmıştır.Transistörler,ilkdefa1956yılındabilgisayarlardakullanılmayabaşlanmıştır.Budöneminenbelirginbuluşu,transistörlerinvakumtüplerininyerinialarakmakineboyutlarınınküçülmesini,birincinesilmakineleregöredahahızlıçalışmasınısağlamasıvemakinedilininyerineprogramlamadillerinegeçilmişolmasıdır.
Budönemdebilgisayarlarişdünyasınadagirmiştir.Malibilgilerinişlendiğibilgisayarlarveprogramlarüretilmiştir.BudönemdeHeath firmasıelektronikanalogbilgisayarı,IBMise‘IBM1401’adıylailkendüstriyelbilgisayarıüretmiştir. Analog Bilgisayar(Heath)
3. nesil bilgisayarlar (1964 - 1970)
ì Vakumtüplerininyerinialantransistörler,bilgisayartarihindeçokönemlibirbuluşolmuştur.Ancakbilgisayarlarelektronikdevrelerindekiçabukısınmadandolayıuzunsüreçalıştırılamamaktadır.1958yılında,Texas InstrumentsmühendislerindenJackKilby,bütünleşmişdevre(IC–Integrated Circuit)buluşuylaısınmasorununuçözümlemiştir.IC,üçelektronikparçanınküçüksilikondisklerdebirleştirilmesiyleoluşanbirdevredir.Bilimadamlarıtekbiryonganınüzerineçokdahafazlatransistör ekleyerekyarıiletkenleri(semi-conductor)icatederler.Sonuçtayongalarıniçerisinenekadarçoktransistöreklenirse,bilgisayarlarınboyutudaokadarküçülmektedir.Budönemedamgasınıvuranikincigelişmede,bilgisayarlariçin‘işletimsistemi’geliştirilerekçoksayıda,farklıprogramlarçalıştırılabilmesidir.
4. nesil bilgisayarlar (1970 - günümüz)
ì Dördüncünesilbilgisayarlarıdiğerdönemlerdenayıranözellik,milyonlarcatransistörün tekbirbütünleşikdevreyongası(Integrated CircuitChip)üzerindetoplanarak,mikroişlemcilerinbulunmasıvekarmaşıkprogramlamadillerinegeçilmesidir.IBM,1981yılında,insanlarıilkdefakişiselbilgisayarlar(PC– PersonalComputer)iletanıştırmıştır.Butarihtenitibarenbilgisayarlarbüyükendüstriyelveaskeriamaçlıçalışmalarındışında;evlere,okullaraveişyerlerinegirmiştir.Bilgisayarlarınbugelişimi,sonrakiyıllardamasaüstüvedizüstübilgisayarlarolarakgündelikhayatımızınayrılmazbirparçasıolmalarınısağlamıştır.
ì PC(IBM)
5. nesil bilgisayarlar (günümüz - gelecek)
ì Beşincinesilbilgisayarlarıngünümüzedamgasınıvurangelişmeleri,paralelişleme(parallel-processing)vebüyükölçeklibütünleşmişdevrelerinbulunmasıdır.Bugelişmeilemilyonlarcatransistör tekbiryongadatoplanıp,milyarlarcaişlemisaliseileifadeedilebilecekzamandilimlerindegerçekleştirebilmektedir.İnsanoğlununhayalgücüneparalelbuluşlargerçekleştirmesininsonuolmadığından,budöneminsonubelirtilememektedir.
5. nesil bilgisayarlar (günümüz - gelecek)
CPU Yıl Transistörsayısı
Intel4004 1971 2,300
Intel8086 1978 29,000
Intel80386 1985 275,000
IntelPentium 1993 3,100,000
Intel PentiumIII 1999 9,500,000
IntelCore 2Duo 2006 291,000,000
AMDK10Quad Core 2007 463,000,000
IntelCore i7 2008 731,000,000
Intel Xeon 8Core NehalemEX 2010 2,300,000,000
Apple A10 2016 3,300,000,000
5. nesil bilgisayarlar (günümüz - gelecek)
ì Transistörler şuhaliilebirvirüs’ün1000’de1boyutundavebirazdahaküçültülürleriseelektronudurduramazlar.Dolayısıylabit’leriüretemezveveriişleyemezler.Artıkbilgisayarlarındeğişmesigerekli.
ì Bunedenle2012yılındaQuantummekaniğiileçalışanilkbilgisayarüretildi.İlkbaştadevasaolanbubilgisayarlar,günümüzdeyavaşyavaşküçültülmeyebaşladı.0ve1dediğimizbitleryerine,Qubitlerle çalışanQuantumbilgisayarları,şimdiliksadeceşifreçözmeişlemleriiçinkullanılıyor.Geliştirilmesinormalbilgisayarlaragöreçokdahazorolanbubilgisayarların,2015yılındaDelft Üniversitesi’nde yapılanbirçalışmaileışıkhızındandahahızlıişlemyapabildiğiispatlandı.
Yazılım nedir?
ì Elektronikbircihazın,istenilenbirişiyapmasıiçinbirprogramlamadiliilehazırlanmışkodkümesine“program”denir.
ì Belirliişlerinyapılmasıiçinkoordineçalışanprogramlarıntümünede“yazılım”denir.Yazılımlar,sistemveuygulamayazılımlarıadıaltındaincelenir.
Sistem yazılımları
ì Bilgisayarınkullanıcıileetkileşiminisağlayanyazılımlardır.
ì Bilgisayarkullanımıiçingereklianafonksiyonlarısağlarvebilgisayardonanımınavesisteminyürütülmesineyardımcıolur.
ì İşletimsistemleri
ì Aygıtsürücüleri
ì Derleyiciler
ì BIOS
Uygulama yazılımları
ì Birişletimsistemiüzerindeçalışan,belirliişlemlerigeçekleştirmeküzeregeliştirilmişyazılımlardır.
ì ÖrneğinWindowsişletimsistemindeçalışmaküzeregeliştirilmişbiryazılım,MACOSişletimsistemiüzerindeçalışmaz.
ì Uygulamayazılımları,donanımladoğrudaniletişimegeçmez,işletimsisteminiaracıolarakkullanırlar.
Uygulama yazılımları
ì Kelimeişlemyazılımları(Wordpad,MSWord,OpenOfficeWriter,AdobeReadervb.)
ì Elektroniktablo-hesapyazılımları(Excel,Numbers vb.)
ì Veritabanı yazılımları(MSAccess,Oracle,Paradox,SQLServervb.)
ì Tümleşikpaketyazılımlar(MSOfficevb.)
ì Grafikyazılımları(CorelDraw,Photoshop,Autocad vb.)
ì İnternettarayıcıyazılımları(GoogleChrome,MSEdge,MozillaFirefox,Safarivb.)
Uygulama yazılımları
ì İletişimyazılımları(Messenger,Whatsapp,BİPvb.)
ì Zararlıyazılımlar(Virüs,truvaatı,solucanvb.)
ì Oyun-eğlenceyazılımları(PC,PS,Mobiltelefonvetabletoyunlarıvb.)
ì Casusyazılımlar(Keylogger vb.)
ì Güvenlikyazılımları(Antivirüs,Firewallvb.)
ì Programgeliştirmeyazılımları(VisualStudio,Delphi,JBuildervb.)