Programlama Temellerİ Bölüm 1 Programlama Temellerİ DERS NOTLARI Öğr. Gör. Hüseyin TURGUT
BÖLÜM KONULARI Bilgisayar nedir Bölüm #1 Bilgisayar Genel Kavramlar Programlama Temelleri Bölüm #1 Bilgisayar nedir Bilgisayar Genel Kavramlar Veri - Bilgi BÖLÜM KONULARI Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
elektronik bir aygıttır Programlama Temelleri Bölüm #1 Bilgisayar nedir elektronik bir aygıttır verileri belirli bir plana göre okuyarak, onları kendi anlayabileceği bir dile çevirir ve sonuçları kullanıcıya sunar verileri saklayabilir Zaman Miktar Basitleştirme Kolaylaştırma Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Veri Bilgi Verileri alan, Programlama Temelleri Bölüm #1 Bilgisayar nedir Verileri alan, aldığı verileri aritmetiksel veya mantıksal işlemler yaparak bilgiye dönüştüren elektronik cihazlardır. Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Veri Aritmetik Mantık Bilgi Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Anlamsız sembol, işaret, görsel işitsel materyaldir. Programlama Temelleri Bölüm #1 Veri ve Bilgi Tanımları Veri nedir Bilgisayar Genel Kavramlar Anlamsız sembol, işaret, görsel işitsel materyaldir. Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Bilgi Nedir Mantıksal İşlemler Boole Verilerin işlenmiş ve anlamlandırılmış halidir. Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Bilgisayar için “veri” genellikle karakterlerdir. Programlama Temelleri Bölüm #1 Veri Bilgisayar için “veri” genellikle karakterlerdir. Tüm harf, rakam, işaret, klavye sembolleri birer karakterdir. Karakterler evrensellik için standartlaştırılmıştır. ÖRNEĞİN: ( ASCII ) Toplam 256 farklı karaktere ait bir tablodur. Bu tabloda tüm karakterler sıralı bir listeye sahiptir. Listedeki bazı karakterler ve sıraları [ A ] = 65 [ z ] = 122 [ æ ] = 145 [ Ë ] = 211 Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Veri – ASCII karakter tablosu Programlama Temelleri Bölüm #1 Veri – ASCII karakter tablosu Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
İŞLEM VERİ BİLGİ Aritmetiksel Mantıksal Veri Bilgi Bölüm #1 Bilgisayar Programlama Temelleri Bölüm #1 Veri Bilgi İŞLEM Bilgisayar Genel Kavramlar VERİ BİLGİ Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Aritmetiksel Mantıksal Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Bilgisayar iki temel kısımda incelenebilir: Programlama Temelleri Bölüm #1 YAZILIM ve DONANIM Bilgisayar iki temel kısımda incelenebilir: Bilgisayar Genel Kavramlar Veri - Bilgi Donanım (hardware) : Bilgisayarın elektronik ve fiziksel yapısının tümüdür. Yazılım (software) : Donanımın yönetimi ve işleyişi ile ilgili plan/programı kapsar. Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
DONANIM Merkezi İşlem Birimi (CPU) Ana Bellek (RAM) Programlama Temelleri Bölüm #1 YAZILIM ve DONANIM DONANIM Merkezi İşlem Birimi (CPU) Ana Bellek (RAM) Ön Bellek (Cache Memory) BIOS (Basic İnput Output System) Anakart Bilgisayar Kasası Sabit Disk (Hard disk) ve Disketler CD-ROM Sürücü DVD-ROM Monitör (Ekran) Klavye Mouse (Fare) Yazıcı (printer) Çizici (plotter) Tarayıcı (scanner) Modem Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
YAZILIM Kelime işlemci programlar, Programlama Temelleri Bölüm #1 YAZILIM ve DONANIM YAZILIM Kelime işlemci programlar, bilgisayarınız açıldığında CD sürücünüzü, sabit sürücüleri, RAM'i tanıyan BIOS; işletim sistemi, web tarayıcınız, virüslerin kendileri, antivirüs programları Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
ARİTMETİKSEL İŞLEM MANTIKSAL İŞLEM Programlama Temelleri Bölüm #1 İŞLEMLER ARİTMETİKSEL İŞLEM Toplama Çıkarma Çarpma Bölme Modüler Trigonometri MANTIKSAL İŞLEM Ve Veya Değil . Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Matematikte aritmetik işlemler fonksiyonlardır. f(x) = 2 . x Programlama Temelleri Bölüm #1 ARİTMETİK İŞLEMLER Sayısal karakterlerin dört işlem veya benzeri uygulamalarla dönüşümlerinin sağlanması Matematikte aritmetik işlemler fonksiyonlardır. f(x) = 2 . x f(x) = [ x + 3 ] . [ x - 1 ] Ayrıca karakterlerin eklenmesi, çıkartılması gibi işlemler de aritmetiksel işlemlere dahildir. Üniversite ‘nin ilk üç karakteri [ Ü ] [ n ] [ i ] [ v ] [ e ] [ r ] [ s ] [ i ] [ t ] [ e ] [ Ü ] [ n ] [ i ] Üni Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Karakterlere ait işlemler 2 farklı şekilde yapılmaktadır. Örneğin, Programlama Temelleri Bölüm #1 ARİTMETİK İŞLEMLER Karakterlere ait işlemler 2 farklı şekilde yapılmaktadır. Örneğin, Sayısal değerlerle ….. 54 + 59 113 Metinsel değerlerle ….. [54] + [59] [6] + [8] 68 olabilir Sayısal değerlerle ….. 65 + 66 131 Metinsel değerlerle ….. [65] + [66] [A] + [B] AB olabilir Sayısal değerlere: numerik – tamsayı – ondalıklı – reel – rasyonel Metinsel değerlere: string – char adı verilmektedir. Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Mantık doğru düşünmenin bilimidir. Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER MANTIK (LOGIC) bilginin yapısını inceleyen, doğru ile yanlış arasındaki akıl yürütmenin ayrımını yapan disiplindir, doğru düşüncenin aletidir. Mantık doğru düşünmenin bilimidir. Mantık işlemleri için ÖNERME ? (sonuç) Sonuç evet ya da hayır dır.. Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Birleştirme VE bağlacı ile yapılırsa Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER Birden fazla önermenin birleştirilerek tek bir önerme şeklinde bildirilmesidir. Birleştirme VE bağlacı ile yapılırsa A bir önerme / B diğer bir önerme ise A ve B ‘nin olması : A VE B için AB [ venn sisteminde ] AB [mantık] Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Birleştirme VEYA bağlacı ile yapılırsa Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER Birden fazla önermenin birleştirilerek tek bir önerme şeklinde bildirilmesidir. Birleştirme VEYA bağlacı ile yapılırsa A bir önerme / B diğer bir önerme ise A veya B ‘nin olması : A VEYA B için AB [ venn sisteminde ] AB [ mantık ] Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
A ‘nın DEĞİLi A’ [ venn sisteminde ] A [ mantık ] Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER Birden fazla önermenin birleştirilerek tek bir önerme şeklinde bildirilmesidir. BİRLEŞTİRME için Önermenin TERSİ de alınabilir. TERSİ için DEĞİL işlemi yapılır. A bir önerme A’nın olmaması; A ‘nın DEĞİLi A’ [ venn sisteminde ] A [ mantık ] Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
– (B) birer önerme ise Bölüm #1 MANTIKSAL İŞLEMLER A B VE VEYA A değil Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER – (B) birer önerme ise Bilgisayar Genel Kavramlar Veri - Bilgi A B VE VEYA A değil B değil Hayır HAYIR EVET Evet Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Bölüm #1 A B VE VEYA A değil B değil 1 Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER Bilgisayar ve Elektronik alanında elektriksel akım kullanıldığı için EVET - VAR HAYIR – YOK olarak sembolize edilir. Bu sisteme BOOLE ismi verilir. Var için [ 1 ] yok için [ 0 ] sayısal ifadesi kullanılır. Tabloyu boole tabanına göre yeniden oluşturursak Bilgisayar Genel Kavramlar Veri - Bilgi A B VE VEYA A değil B değil 1 Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Bölüm #1 A B VE VEYA A değil B değil 1 Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER Tablo değerleri kontrol edilirse, VE işlemi ÇARPMA, VEYA işlemi TOPLAMA işlemine benzemektedir. Ancak seçeneklerimiz 0 veya 1 olduğu için 0 veya 1 in alt üst değerlerini alamazlar.. Bilgisayar Genel Kavramlar Veri - Bilgi A B VE VEYA A değil B değil 1 Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
A’nın değili 1 ise 0, 0 ise 1 değerini alır. Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER A ve B = A.B A veya B = A + B ‘dir A’nın değili 1 ise 0, 0 ise 1 değerini alır. Bilgisayar Genel Kavramlar Veri - Bilgi A B VE VEYA A değil B değil 1 Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Boole kurallarının uygulandığı sistem BOOLEAN olarak ifade edilir. Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER Boole kurallarının uygulandığı sistem BOOLEAN olarak ifade edilir. DAĞILMA özelliği C.(A+B) AC + AB (A+B) + (C+D) AC + AC + BC + BD (A.B)’ A’ + B’ (A+B)’ A’ . B’ olarak dönüştürülebilir. ((A+B).C)’ + A [ (AC)’ . (BC)’ ] + A [ (A’ + C’).(B’+C’) ] + A [ A’B’ + A’C’ + B’C’ + C’C’ ] + A A + A’B’ + A’C’ + B’C’ + C’ dir… Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
((A+B).C)’ + A [ (AC)’ . (BC)’ ] + A [ (A’ + C’).(B’+C’) ] + A Programlama Temelleri Bölüm #1 MANTIKSAL İŞLEMLER ((A+B).C)’ + A [ (AC)’ . (BC)’ ] + A [ (A’ + C’).(B’+C’) ] + A [ A’B’ + A’C’ + B’C’ + C’C’ ] + A A + A’B’ + A’C’ + B’C’ + C’ dir… Bu değişimde kümeleme de yapılabilir. A + A’(B’+C’) + C’(B’ + 1) A + A’(B’+C’) + C’ ((A+B).C)’ + A A + A’(B’+C’) + C’ Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
A B AB (A ve B) A B A+B (A veya B) A A (A yükseltici) A A’ (A değil) Programlama Temelleri Bölüm #1 BOOLE - BOOLEAN Bilgisayar Genel Kavramlar A B AB (A ve B) Veri - Bilgi A B Yazılım Donanım A+B (A veya B) Aritmetik İşlemler Mantıksal İşlemler A A (A yükseltici) Boole A A’ (A değil) Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
BOOLE - BOOLEAN Bölüm #1 Bilgisayar Genel Kavramlar Veri - Bilgi Programlama Temelleri Bölüm #1 BOOLE - BOOLEAN Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
? BOOLE - BOOLEAN Bölüm #1 A B C Bilgisayar Genel Kavramlar Programlama Temelleri Bölüm #1 BOOLE - BOOLEAN Bilgisayar Genel Kavramlar A B C Veri - Bilgi ? Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
BOOLE - BOOLEAN Bölüm #1 A.B A B C (AB)(A + C) = (AB)( A . C) Programlama Temelleri Bölüm #1 BOOLE - BOOLEAN Bilgisayar Genel Kavramlar A.B A B C Veri - Bilgi Yazılım Donanım Aritmetik İşlemler (AB)(A + C) = (AB)( A . C) = A A B C = 0 = 1 Mantıksal İşlemler (A + C) Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
? BOOLE - BOOLEAN Bölüm #1 A B C Bilgisayar Genel Kavramlar Programlama Temelleri Bölüm #1 BOOLE - BOOLEAN A B C Bilgisayar Genel Kavramlar Veri - Bilgi Yazılım Donanım ? Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
BOOLE - BOOLEAN Bölüm #1 A B C (A’.B.C)’ (A+B’+C)’ Programlama Temelleri Bölüm #1 BOOLE - BOOLEAN A B C Bilgisayar Genel Kavramlar (A’.B.C)’ Veri - Bilgi Yazılım Donanım Aritmetik İşlemler [ (A’.B.C)’ ] . [ C ] . [ (A + B’ + C)’ ] Mantıksal İşlemler (A+B’+C)’ Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Programlama Temelleri Bölüm #1 BOOLE - BOOLEAN Bilgisayar Genel Kavramlar [ (A’.B.C)’ ] . [ C ] . [ (A + B’ + C)’ ] = ( A . B . C ) . ( C ) . ( A + B + C ) = ( A + B + C ) . ( C ) . ( A . B . C ) = ( AC + BC + CC ) . ( A . B . C ) = (AC + BC) . (A.B.C) = AABCC + ABBC Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Bölüm #1 A B C A+BC’ B’+AC SONUC Programlama Temelleri Bölüm #1 Karnaugh haritası / Doğruluk Tablosu (A+BC’).(B’+AC) mantıksal sorgusunun doğruluk tablosu Bilgisayar Genel Kavramlar A B C A+BC’ B’+AC SONUC 1 Veri - Bilgi Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler Boole Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
Karnaugh haritası / Doğruluk Tablosu Programlama Temelleri Bölüm #1 Karnaugh haritası / Doğruluk Tablosu (A+BC’).(B’+AC) mantıksal sorgusunun doğruluk tablosu Bilgisayar Genel Kavramlar Veri - Bilgi AB CD 00 01 11 10 1 C = 0 A = 1 A.B’.C B= 0 Yazılım Donanım Aritmetik İşlemler Mantıksal İşlemler C = 1 D = 0 C.D’ Boole D = 1 A = 0 A’.B.D B= 1 Doğruluk Tablosu Öğr.Gör.Hüseyin TURGUT hturgut.com
BÖLÜM SONU - ÇALIŞMA SORULARI Bilgisayar terimini açıklayınız? Cep telefonları, dijital saatler, mp3 çalarlar bilgisayar mıdır? Veri ve Bilgi arasındaki fark nedir? Sosyal hayattan bir örnek veriniz? Yazılım ve donanım konusunda iki temel bileşenin birbirine olan ihtiyaçları nelerdir? Aritmetiksel ve mantıksal işlemlerde ortak olan çarpma ve toplama işlemlerinde sonuçlar neden farklı çıkmaktadır? Hızlı giderse yavaşlayan, yavaş giderse hızlanan bir sistemin mantıksal yapısını açıklayınız. ABC+AB’+BC’ fonksiyonunun mantık devresini ve doğruluk tablosunu oluşturunuz.