Bilgisayar ve Problem Çözme Kavramları Algoritma ve Akış Çizgeleri Bölüm 1 Bilgisayar ve Problem Çözme Kavramları Algoritma ve Akış Çizgeleri
Bilgisayar Yapısı-Genel İkincil Bellek (Secondary Storage) Ekran Birincil Bellek (main memory) Çıkış Aygıtları Giriş Aygıtları Hoparlör Ana İşlem Birimi (Central Processing Unit-CPU) Fare Klavye Yazıcı
Rasgele Erişimli Bellek Ana Bellek Salt Okunur Bellek (Read Only Memory-ROM) İkincil Bellek (Secondary Storage) Ekran ... ROM Birincil Bellek (main memory) Rasgele Erişimli Bellek (Random Access Memory-RAM) Çıkış Aygıtları Giriş Aygıtları Hoparlör Yazıcı Ana İşlem Birimi (Central Processing Unit-CPU) Fare Klavye Bellek Hücreleri (Memory Cells)
Bellek Hücreleri ... Adres (İkili) Değer (İkili) Değer (Onlu) 0000 0100 1101 77 0001 1001 0000 144 0010 1111 0000 240 0011 0000 0000 0100 0111 1110 126 0101 0100 0000 64 0110 0100 0001 65 0111 0111 0101 117 1000 0100 0000 64 ... 1110 1110 1110 238 1111 1111 1111 255
Ana İşlem Birimi-Ana Bellek Arası İletişim Salt Okunur Bellek (Read Only Memory-ROM) ... ROM Rasgele Erişimli Bellek (Random Access Memory-RAM) Yazıcı Bellek Hücreleri (Memory Cells) Ana Bellek Denetim Birimi (Control Unit) Aritmetik ve Mantık Birimi (Arithmetic and Logic Unit-ALU) ... Yazmaçlar (Registers) Komutlar Ana İşlem Birimi
Bilgisayar Yazılımı-Genel İşletim Sistemi Uygulama Yazılımları
İşletim Sistemi Bilgisayar sistemini oluşturan donanım ve yazılım nitelikli kaynakları kullanıcılar (programlar) arasında kolay, hızlı ve güvenli bir işletim hizmetine olanak verecek biçimde paylaştırırken bu kaynakların kullanım verimliliğini en üst düzeyde tutmayı amaçlayan yazılım sistemi* * Saatçi A., Bilgisayar İşletim Sistemleri, 2. Basım, Bıçaklar Kitabevi, Ankara, 2003
İşletim Sisteminin Görevleri (1) Kullanıcılarla iletişim. Kullanıcıdan gelen komutları yorumlamak ve gereğini yerine getirmek. Değişik görevler için bellek, işleyici zamanı, disk kütüğü gibi sistem kaynaklarını ayırmak ve yönetmek. Klavye, fare gibi giriş aygıtlarından giriş verisi alarak bunu ilgili programa aktarmak.
İşletim Sisteminin Görevleri (2) Program çıktısını ilgili çıkış aygıtına (ekran, yazıcı vb.) iletmek. Disk, disket, CD-ROM gibi ikincil saklama ortamlarındaki veriye erişmek ve bu verinin kullanılmasını sağlamak. Gerekli veriyi, ikincil saklama ortamlarına yazmak.
İşletim Sistemi ROM belleğin bir kısmını oluşturan BIOS, işletim sisteminin bir parçasıdır. Diskteki işletim sistemi kesiminin RAM belleğe yüklenmesi (yükleme-booting)
Çok Kullanılan İşletim Sistemleri UNIX MS-DOS MacOS UNIX + X Window Windows
Programlama Dilleri İkili makine kodu, İşleyiciye göre değişen komut kodları Okunurluğu çok düşük, kodlamak zor
Programlama Dilleri Assembly İkili makine kodları-> anımsatıcı (mnemonic) kodlar İkili bellek adresleri-> değişken isimleri Örnek: MOV A, 5 MOV B, A ADD A ADD B Assembly program-> Assembler-> Makine Kodu
Üst Düzey Programlama Dilleri Temel Kullanım Amacı Adının Kökeni C Sistem Programlama B dilinden sonra geliştirildi C++ Nesneye yönelik programlama C dili üzerine eklentilerle Java Platformdan bağımsız + Ağ (web) programlama İlk ismi Oak (meşe) Ada Gerçek zamanlı (real time) dağıtık (distributed) sistemler Charles Babbage, Ada Augusta Byron Smalltalk Nesneler birbirleriyle “konuşur”
Üst Düzey Dil ile Programlama Hata İletisi (Error Message) Kaynak Kod Kütüğü (Source Code File) Kütük Biçimi: Metin (File Format: Text) Sözcük işleme Programı (editör) E Sözdizim Hatası (Syntax Error) Derleyici (compiler ) Amaç Kod Kütüğü (Object Code File) Kütük Biçimi: İkili (File Format: Binary) H Bağlayıcı (linker ) Diğer Amaç Kod Kütükleri Kütük Biçimi : İkili Çalıştırılabilir Kütük (Executable File) Kütük Biçimi: İkili Yükleyici (Loader)
Yazılım Geliştirme Yazılım Geliştirme Yöntemi PROBLEM TASARIM (Design) Problemi Tanımla Çözümden ne bekleniyor? TASARIM (Design) Çözüm Algoritmasını Tasarla Çözüm için gereken işlemlerin adım adım listelenmesi SINAMA (Testing) Programı sına ve doğrula (test and verification) BAKIM (Maintenance) Program bakım ve güncellemesi ÇÖZÜMLEME (Analysis) Problemi Çözümle Giriş verisini Çıkış verisini Çıktı biçimini belirle, Değişkenleri Değişkenler arası ilişkileri (formülleri) belirle Algoritma denetim yöntemleri: Sıralı (sequential), koşullu (conditional-selectional), tekrarlı (repeat) GERÇEKLEŞTİRİM (Implementation) Algoritmayı kodla Algoritmayı oluşturan her adım kodlanır