Yazılım Mühendisliğine Giriş 2018 GÜZ
İkinci Kuşak Bilgisayarlar -1956-1963 Transistör 1947 yılında keşfedilmiştir. 50 li yılların sonuna kadar bilgisayarlarda yaygın kullanımı görülmez. Vakum tüplere göre çok daha avantajlıdır. Transistör Bilgisayarların küçülmesini, hızlanmasını, ucuzlamasını, enerji tasarrufunu ve çok daha fazla güvenilirliği sağlamıştır. Transistorun fazla miktarda ısı yayması bilgisayarın zarar görmesine neden olabilmekteydi. Transistor vakum tüplerden sonra radikal bir gelişmedir.
İkinci Düzey Programlama Dilleri : Düşük Düzeyli Assembly Dili Bu diller makine kodundan geliştirilmiştir. Bu diller makineye bağlı olmayı sürdürürler. Her bir «assemblydil» komutu sadece bir makinenin komutlarını betimler. Örnek bir assemblydilinde komutlar 3 dijitli kısaltmalarla yazılmıştır. LDA 5000 ADA 6000 STA* 5000 Bu üç kod satırı iki tamsayıyı topluyor ve sonucu ilk tamsayının olduğu bellek yerleşiminde (memorylocation) tutmaktaydı.
Düşük Düzeyli Dil: AssemblyDili Assemlydilinde bir program yazmak oldukça karmaşık bir işlemdir vetaşınabilir (portable) bir dil özelliği taşımamaktadır. Bu dilin olumsuz bir özelliğidir. Assembly dilinin yine de avantajı vardır. Örneğin load accumulator(toplayıcıya yükle) sözcüğünün kısaltılmışı olan LDA, ikili dijitlerden oluşan bir dizgiyi hatırlamaktan çok daha kolaydır.
MOV AX, 47104 Assembly Kodu //47104 sayısı AX konumuna kopyalanır MOV DS, AX //AX sayısı DS konumuna kopyalanır. MOV [3998], 36 //36 sayısı 3998 bellek yerleşimine konulur. INT 32 INT 32 ile işletim sistemine dönülerek programdan çıkılır Bu programlama yapısında da kod satırlarının anlaşılması oldukça karmaşıktır.
Assembly Dili ve Makine Dili Assembler, iki dil arasındaki dönüşümü gerçekleştirir.
Assembly Dilinin Kullanım Amaçları Assembly dili, makine diline dönüşmeden önce makinenin işleyişini sağlar. Her bilgisayarın bir mikro işlemcisi (microprocessor) vardır. Bilgisayarların aritmetik, lojik ve kontrol işlemlerini kontrol eder. Her işlemci ailesinin kendisine ait komutları vardır. Örneğin klavyeden giriş alınır, ekranda görüntülenir ve bazı işlemler gerçekleştirir. Bu komutlar makine dili komutları olarak adlandırılır.
Assembly DilininÖnemi Bir işlemci sadece makine dili komutlarını anlar. Makine dili ise oldukça karmaşıktır ve yazılım geliştirmede kullanımı zordur. Bu nedenle düşük düzeyli assembly dili tasarlanır. Pek çok komut sembolik olarak tasarlanır. Daha kolay anlaşılabilir.
Assembly Dilinin Avantajları Assembly dili aşağıdaki soruları cevaplar: İşletim sistem (OS), işlemci ve BIOS ile arayüz nasıl programlanır? Bellekte ve harici aygıtlarda data nasıl simgelenir? İşlemci erişimleri ve komut çalıştırılması nasıl gerçekleşir? Komutlar dataya nasıl erişir ve işlem gerçekleştirir? Program harici aygıtlara nasıl erişir?
Assembly Dilinin Avantajları Daha az bellek ve çalışma zamanı gerektirir. Zamanın kritik olduğu işlere uygundur (It is suitable for time-critical jobs) Aygıtların çalışmasının kesilmesi ile ilgili durumlarda düşük düzeyli kodlar daha uygundur. Bellek kaydı (memoryregister) düşük düzeyli dil ile yazılır.
İkili Sayı Sistemi 8-bit bir sayı sisteminde tüm bitler ON olduğunda aşağıdaki şekilde simgelenir. 1 + 2 + 4 + 8 +16 + 32 + 64 + 128 = 255 2 8-1
Hexadecimal Sayı sistemi
İkinci Kuşak Bilgisayarlar 1956-1963 Transistörler Giriş/çıkış işlemleri için delgi kartlarını kullanılıyordu. Belirsiz (ambiguous) ikili makine dillerinden sembolik veya assembly dillerine geçiş sağlanmıştır. Böylece programcıların komutlarını sözcüklerle ifade etmeleri mümkün olmuştur. Yüksek düzeyi programlama dillerinin geliştirilmesi de bu dönemdedir. COBOL ve FORTRANprogramlama dillerini ilk versiyonları
İkinci Kuşak Bilgisayarlar 1956-1963 Transistörler Bu diller manyetik silindirlerden manyetik çekirdek (core) depolamaya geçen program komutlarını bellekte saklıyordu Bu tür bilgisayarlar ilk olarak atom enerjisi endüstrisi için geliştirilmiştir.