Bir söylentiye göre bilgisayar mühendisleri uçağa
|
|
- Özgür Necmi
- 8 yıl önce
- İzleme sayısı:
Transkript
1 ÇALIŞAN YONGALAR ÜRETMEK Y azanlar: Davld SHEPHERD, Gr*g VVİLSON** Çavlrl: Erhan Y ÜCEER'" Kullandığınız bilgisayarın uygun olarak çalıştığını nereden biliyorsunuz? Programlarınız virüs taşıyabileceği gibi mikroişlemcinizin tasarımı da yanlış olabilir. Matematiksel mantık üzerine kurulmuş yeni bir yaklaşım güvenilmeye değer yongalar üretebilir. Bir söylentiye göre bilgisayar mühendisleri uçağa binmezlermiş, çünkü uçağı kontrol eden elektronik yongaya güvenmiyorlarmış. Ortalama bir mikroişlemci, on veya yüz binlerce aktif bileşenden oluşan çok karmaşık bir aygıttır. Tasarımdaki en küçük hata yonganın hiç çalışmamasına, daha da kötüsü her bir iki milyon işlemde bir hata yapmasına yol açar. Bir mühendis bir yongayı kağıt üzerinde doğru olarak tasarlasa da tasarımın donanım olarak gerçekte uygulanması yanlış olabilir. Bir mimar bir köprüyü doğru olarak tasarlayabilir, fakat inşaatı yapan kişi ozaliti yanlış (*) "Making Chips That Work", New Scientist. 13 Mayis 1989, sf (**) D. Shephard İnmos şirketi için yonga tasarlamaktadır. G. VVilson Edinburgh Üniversitesi'ndeki Edinburgh sayar (supercomputer) projesi'nde çalışmaktadır. (" *) ODTÜ Elektrik-Elektronik Müh. Bolümü 4. Sınıf öğrencisi 375-ELEKTRİK
2 olarak tasarlayabilir, fakat inşaatı yapan kişi ozaliti yanlış okur ve kirişleri mimarın belirttiğinin yarı kalınlığında kutlanırsa köprü germe ve gerilme kuvvetleriyle çekebilir. Bu örneklere benzer olarak da, kağıttaki tasarımdan : jygu amaya hatalı olarak geçirilen bir yonga \ : ıı birasında yanılabilir. Mikroişlemciler yaşam destek sistemleri, tren ve uçak kontrolları gibi bir çok uygulama alanları bulurlar ve bundan dolayı güvenilir olmak zorundadırlar. Hatta sıradan bir çamaşır makinasına bile yanlış bir parça koymak üreticinin çok para kaybetmesine yol açabilir. Günümüzde bazı yonga üreticileri matematiksel mantık kullanarak yonga tasarımında yeni tekniklere geçmişlerdir. Ağırlığını İngiltere ve ABD'nin oluşturduğu bir düzineye yakın araştır-ma grubu biçimsel yöntem adını verdikleri bu yöntemi geliştirmekedirler. Bu teknikler yongaları daha güvenli kılacaktır. İngiliz yonga üreticisi olan Inmos firması ticari olarak yonga üretiminde biçimsel yöntemi kullanan Hk şirketlerden biridir. Şirket 1986 yılında serisinin üçüncüsü olan ve geleneksel işlemcilerden daha güçlü ve hızlı işlem yapabilen bir paralel işlemci olan T800 yongasını piyasaya çıkardı. Bu yonga çok büyük sayıların yer aldığı bilimsel hesaplamalar için idealdir. T800 bir çok yongadan daha karmaşıktır. İçinde bir ana işlemci ünite, dört iletişim hattı ve dört kilobayt bellek vardır ve bunların hepsi bir çok tasarımda olduğu gibi ayrı değil bir tek yonga üzerindedir. Ayrıca yongada kesirleri de içeren ve bilgisayarın çok büyük sayı gruplarını saklayıp işletebilmesine yardımcı olan bir ünite de yer almaktadır. Buna uçuşan nokta (floating polnt) aritmetiği adı verilmektedir. Herhangi bir sayıyı, bir tam sayının onun kuvvetleriyle çarpımı olarak gösterir. Örneğin 4096 sayısını 4.096x 10 3 şeklinde göstermek olasıdır. Bilgisayar üs olan 3'ü 4.096'dan ayrı olarak saklar ve sayısı ondalık noktası "uçuşan" olarak 4096 şeklinde saklanır. Ne yazık ki uçuşan noktalı sayılarla işlem yapmak daha karmaşık olduğundan tam sayılarla işlem yapmaktan daha yavaştır. Bilgisayardan 1.2x 10 3 ve 3.3 x 10" 1 gibi iki sayıyı toplaması istendiği zaman 4.5 x 10 2 cevabını almamak için bilgisayarın bazı kaydırma ve düzenlemeler yapması gerekmektedir. Büimsel hesaplamaların hızı bilgisayarın uçuşan nokta aritmetiğini başarma hızına bağlı olduğu için yonga tasarımcıları bu hesaplamaları hızlandırmak için özel uçuşan nokta aritmetiği üniteleri (FPU- floating point units) kullanmaktadırlar. T-tarımcılar FPU'yu bilgisayarın diğer parçalarıyla aynı yonga üzerine koymakla bu yonganın kullanıldığı sistemnn genel hızını artırmayı umuyorlar. Yonga üzerindeki : ı-^j'nun içinde, yazmaç adı verilen ve çok hızlı olan belli.k hücreleri, uçuşan nokta aritmetiği yapacak olan e ve bu üniteleri birleştiren iletişim hatları (bus) ELEKTRİK vardır. Küçük ve değiştirilemeyen bir program olan mikrokod FPU'nun veri oluşturan rakamlara neler yaptığını, bu değerlerin hangi yoldan yazmaçlara, oradan bilgisayarın belleğine gittiğini ve geri döndüğünü kontrol eder. Mikrokod FPUya gönderilen komutları mikrokomutlar düzeyine böler. Bu komutların her biri tek bir ünite veriyi bir yazmaçtan ötekine aktarır veya veriyi toplayıcı veya çarpıcı gibi aritmetik ünitelerden birine yollar. FPU'yu bu kadar karmaşık yapan şey, maksimum hız elde edebilmek için üreticilerin her bir mikrokomuta olası en çok işi yaptırma çabalarıdır. Bir tek komut, bir sayının bir parçasını bir yazmaca kaydırırken, ötekinin işaretini kontrol edip diğer bir üçüncü sayıyla toplama işlemine girebilir. T800 gibi bir yonganın doğru tasarlanıp tasarlanmadığını görmenin en açık yolu onu yoğun biçimde denemektir. Yongaya olası tüm girdileri verip çıktıları inceleyerek teoride yonganın doğru çalıştığı söylenebilir. Örneğin toplamayı kontrol etmek için yongaya tüm olası sayı çiftleri girdi olarak verilip her bir çıktı incelenerek yonganın doğru çalıştığı söylenebilir. Fakat harcanması gereken çabanın büyüklüğü bu denemeyi olanaksız kılar. Bunu görebilmek için bit'lik bilgiyi ele alalım. Bu bilgi iki durumda olabilir; 0 veya 1. iki bit birarada dört olası durumda bulunabilir: 00, 01, 10, 11. üç bit birarada sekiz olası durumda bulunabilir. Genelde, n bit kendi arasında 2" değişik şekilde dizilebilir. T800 gibi birçok iç bellek bitlerine, artı, değişik giriş ve çıkış sinyal yollarına sahip bir mikroişlemcide ise tüm evrendeki parçacıklardan daha çok durum olabilir. Saniyede milyonlarca test yapılsa bile, bu yolla yonganın doğru çalıştığı kanıtlanamaz. Sonuç olarak tasarımcılar yongayı tüm olası durumları temsil ettiğine inandıkları durumların küçük bir alt kümesiyle test ederler. Bu küçültülmüş alt küme bile, hala birkaç milyon test kapsıyor olabilir, bundan dolayı yongayı işletebilmek birkaç gün alabilir. Durumu daha da kötüleştirmek gerekirse, tasarım sırasında denemek için bir yonga bulunmadığından, yongaya benzeşen (simulate) bilgisayar pogramları kullanılmaktadır. Bu bilgisayarlar, tasarlanan yongadan yüzlerce hatta binlerce kez daha yavaş çalıştıkları için test zamanını aylara çıkarırlar. T800'ün taklit edilmesi sırasında, uçuşan nokta aritmetiğini test etmek için yapılan ve gerçeğin 1/500 hızında olan bir test neredeyse üç hafta sürmüştür. Doğruluğu test ederek göstermenin doğuracağı en son sorun da test sonuçlarının değerlendirilmesidir. Milyonlarca test sonucunu tek tek incelemenin hiç bir pratik sonucu olmadığından, tasarımcılar yeni yongayı ya bilgisayardaki taklidiyle ya da piyasada bulunan başka bir yongayla karşılaştırmak zorundadırlar. Ama bu kez de tasarımcılar karşılaştırmada kullandıkları yonganın hatalı olabilmesi sorunuyla karşılaşabilirler. Inmos'da yapılan
3 ilk çalışmalarda böyle bir sorunla karşılaşılmış, referans olarak kullanılan yonga birkaç kez hatalı çıkmıştır. Inmos'un tasarım ve deneme yerine geliştirmekte olduğu yöntemlerle yonganın son halinin doğru olarak çalışması garanti altına alınacaktır. Bu yöntemler bilim adamlarının yüzeysel olarak benzemeyen iki terimin aslında aynı olduğunu göstermek için matematik eşitlikleri yeniden düzenlemelerine benzemektedir. Tasarımcılar yongaya yüksek düzeyli bir tanımlama yaparak işe başlarlar. Bu tanimlama her işlemden önce ve sonra hangi bileşen tarafından ve nasıl yapıldığını açıklamaksızm yonga bileşenlerinin durumlarını açıklar. Daha sonra tasarımcılar matematik teoremlerin açıklanmasına benzer yöntemler kullanarak bu tanımlamayı yonganın nasıl yapacağını ona çevirirler (translate). Bu anlatıma genellikle işlemsel anlatım adı verilir, çünkü matematiksel mantıkla oluşturulmuş ve hesap yapmada kullanılan bir dizi işlemden meydana gelmektedir. Son olarak tasarımcılar bu işlemlerdeki komutları düşük düzeyli mikrokom utlar olarak, bir başka deyişle yonganın okuyabileceği bir bilgisayar koduna çevirirler. Bu yonganın her bir bileşenini kontrol edecektir. Çünkü bu işlemin her basamağındaki dönüşümler sadece tanımlamanın belirtildiği yolla değişir, yani ortaya çıkan mikrokod özgün tasarımın doğru bir çevirisi olmalıdır. Inmos'taki tasarımcıların karşılaştıkları ilk sorun FPU yapısını oluşturduktan sonra, onu doğru çalıştıracak mikrokodun nasıl yazılacağı olmuştur. Başlangıç olarak tasarımcılar Amerikan. Elektrik ve Elektronik Mühendisliği Enstitü'sünden uçuşan nokta aritmetiği için bir standart aldılar. IEEE-754 olarak bilinen bu standart detaylı olarak her aritmetik işlemin sonucunun nasıl hesaplanacağını anlatmaktadır. Uygulayıcının lisansı için bir şey öngörülmemiştir, bir uygulama başarılı sonuç da verebilir, tersi de olabilir. Ne yazık ki IEEE bu standardı işe yaramayacak bir dil Bölüm 1: Uçuşan Noktalar İçin Bir Mantık Testi Geotf Barrett ve Inmos'taki tasarımcıların belirli bir komut için nasıl mikrokod geliştirdiklerini anlamak amacıyla, bir uçuşan nokta sayısının eşdeğer bir tam sayıya çevrilişi örneğini ele alalım. Bu iş genellikle daha önce ı saklanmış bir tam sayıyla toplama yapabilmek amacıyla yapılır. Bu çevirim yapılırken, öncelikle FPU uçuşan nokta sayısının değerinin bir tam sayiya çevrilip çevrilemeyeceğini test eder. Bunun yapılma nedeni saklanabilen uçuşan nokta sayılarının sınırının tam sayıların sınırından çok büyük olmasıdır. Eğer uçuşan nokta sayısının değeri bilgisayarın saklayabileceği en büyük artı sayıdan büyük, ya da en küçük eksi sayıdan küçükse, çevirimi yapmak anlamsız bir sonuç ortaya çıkarır. Bu test "Test Integer Range" adı verilen bir komut tarafından yapılmıştır. Buna ait Z ta-nımlaması, yazmaç X ve hata belirleyicisi FLAG olarak FPU üzerine bir bellek hücresi şeklinde yazılır. Eğer X'te saklanan değer bilgisayarın tam sayı saklama sınırının dışındaysa, FLAG TRUE (doğru) vererek bir hata olduğunu gösterir. Tersi durumlarda FLAG değişmeden kalır. Z mantık gösteriminde bu olay aşağıdaki gibi gösterilir. Test Integer Range X,X': Ftoating Point Register FLAG, FLAG: {TRUE, FALSE} value (X) e (valid floating point representations of 32-bit integers} Minlnt S value (X) <, Maxlnt=> (FLAG'=FLAG) (value'(x)<minlnt)or(maxlnt< value (X))=>(FLAG 1 =TRUE) Bu tanımlamaya "şema" adı verilir. Şemanın üst yarısı kullanılan değişkenleri verirburada X sayısı ve hata belirteci FLAG olduğu gibi. İlk satır X'in uçuşan nokta sayısı kapsayan bir yazmaç olduğunu belirtir ve FLAG sadece TRUE (doğru) veya FALSE (yanlış) durumlarında olabilir. (Gerçek Z tanımlamasında "valid floating point representations of 32-bit registers* (uçuşan nokta sayılarının geçerli 32-bit'lik gösterimi) deyimi bu düşünceyi daha iyi açıklayan matematiksel bir gösterimle verilmiştir.) Üs işareti işlemden sonra değişkenin değerini belirtir. Şemanın alt yarısı değişkenlere bazı sınırlamalar getirir. Bu sınırlamalar işîamin etkilerini tanımlar. İlk satır işlemin geçerliliğim onaylamak için bir testtir-eğer X'in uçuşan nokta sayısı olarak değeri 32-bit'lik bir tam sayı değeri vermiyorsa hiç bir işlemin bir anlamı kalmaz. Bu komutu kullanan kişi yukarıdaki koşulu mutlaka sağlamalıdır. Şemanın alt yarısındaki ikinci satır X'in değerinin işlemden sonra aynı kaldığını söylemektedir, başka bir deyişle X geçerli olmayan bir sayı olsa bile değişmemiştir. Bu işlem sırasında kazara sayının değişmesi yan etkilerden kurtulmak için tanımlamaya verilmiştir, tersi durumda olayları izlemek güçleşir. Üçüncü satır, eğer X doğru sınırlar içindeyse, yani value (X) Minlnt ve Maxlnt arasında ise, FLAG değişmez ve bu önceki durumunu korur Tersi durumda, yani X doğru sınırların dışındaysa, dördüncü satır FLAG'in TRUE (doğru) sınırların dışındaysa, dördüncü satır FLAG'in TRUE (doğru) durumunu göstereceğini belirtir. Value () fonksiyonunun ve yazmacın 32-biflik geçerli bir sayı kapsadığının test edilmesi tüm FPU tanımlamasının bir parçasıdır. FPU'nun yapması gerekenin yukandaki tanımlamalara uymak olduğu occam programlama dili kullanarak yazılan aşağıdaki işlem basamaklanyla kanıtlanabilir: (Minlnt<= value (X)) AND (value (X) <=Maxlnt) "eğer X'in değeri" SKIP "tamamsa birşey yapma" "mue. "fakat tüm diğer durumlarda" FLAG:=TRUE "FLAG1 TRUE (doğru) konumuna getir." Testi değerlendirmek için aşağıdaki satıra ve bu basit programın FPU mikrokomutları cinsinden yazılmış biçimine gerek vardır. (Minlnt<= value (X)) AND (value (X) <= Maxlnt) ELEKTRİK
4 ** Occam'ın dönüşüm kurallarını kullanarak yüksek düzeyli işlem basamaklarını daha uzun ve FPU'nun mikrokod komutlarını kullanan düşük düzeyli işlem basamakları haline getirebilirsiniz. Bu işin içeriği sırasında bol kitap edinme gerekliliği ve hata yapma olasılığı vardır, örneğin Bölüm 1'deki dört satırlık program, her biri daha sonra bir düzine ya da daha fazla mikrokomutlara dönüşecek olan yarım sayfa dolusu bilgisayar komutuna dönüşebilir. Bunları kalem ve kağıtla izlemek ise tasarımcıların ilk başta biçimsel yöntem kullanarak kaçındıkları kadar hata yapılmasına yol açar. Fakat kitap edinmek oldukça mekanik bir işlemdir ve bir bilgisayar destekli tasarım (CAD) sistemi işin,oğunu halleder. Bir kelime işlemcinin içerlek yazma, satır uzunluğu, sayfa biçemi gibi bilgileri aklında tutması gibi Oxford Programlama Araştırma Grubu tarafından geliştirilen bir CAD sistemi de program dönüşümlerini aklında tutar. Hangi kuralların kullanıldığını ve o ana kadar tanımlamanın ne kadarının çevrildiğini hatırlar. Bu sistem bir occam programını okur ve sonra programın bölümlerinde dönüşüm dizilerini uygular. Sistem programın o anki durumunu gösterir ve tasarımcıya hangi kuralların uygulanacağını soran bilgisayar daha sonra seçilen kuralı uygular, sonucu yazar ve tasarımcıyı tekrar uyarır. Tasarımcılar sık kullanılan kural kombinasyonlarına isim verebilir ve onları gerekli aritmetik teoremleri işleme koymadan kaydedebilirler. olan İngilizce ile yazdı. Bir fizik probleminin çözümünün ilk aşamasının onu, bir dizi denkleme çevirmek olması gibi, FPU tasarımındaki ilk iş IEEE 754 standardının matematiksel mantığa çevrilmesi oldu. Oxford Programlama Araştırma Grubu'ndan Geoff Barett IEEE-754 standardını "Z" adıyla özel bir mantıksal gösterime çevirdi. Z gösteriminde her bir ayrı kural bir işlemin yapılması için sağlanması gereken koşullar ve FPU bileşenlerinin durumları cinsinden o işlemi tanımlar. Barrett, bundan sonra uçuşan nokta aritmetiğini IEEE tanımlamasına göre yürütecek bir program tasarlayabilmiş ve bu programın doğruluğunu kanıtlayabilmiştir. Barrett ve Inmoslaki tasarımcılar bir uçuşan nokta sayısını eşdeğer tam sayıya çevirme örneğinde olduğu gibi FPU komutlarına mikrokod geliştirmek için kullandılar. Tasarımcılar IEEE-754 standartmdaki her işlem için bu şekilde Z tanımlamaları yazdılar. Bu tanımlamalar ne yapılması gerektiğini söylerken, nasıl yapılacağını belirtmezler. Mikrokod yazıcılarına daha sonra gereken şey ise, her Z tanımlamasını karşılayacak ve FPU'nun sürdürebileceği işlemler cinsinden yazılmış işlem basamakları oldu. Bu yazıcılar işlem basamaklarını yazmak için occam adı verilen basit bir bilgisayar dili kullandılar ve daha sonra geriye doğru çalışarak occam kodunun özgün Z tanımlamalarını sağladığını gösterdiler. Tasarımlardaki kanıtlamaları ekibin bir diğer üyesi David Shepherd tamamladı ELEKTRİK FPU'nun ilk tasarımı dokuz ay almıştır. Geleneksel tekniklerle, eşdeğer bir ünite tasarlamak ise iki yıl sürmektedir. Tasarım ekibinde bir mimar, üç elektrik mühendisi, bir bilgisayar uzmanı ve iki matematikçi vardı. Biçimsel yöntem kullanılarak yazılan tüm mikrokodlar ilk seferinde çalıştı, fakat biçimsel yöntem kullanılmadan yazılan bazı FPU konutları çalışmadı. Buna ek olarak da ekip biçimsel yöntemi kullanmaya başlamadan önce FPU'nun donanım tasarımında bir çatlak meydana geldi. Yonganın ikinci kez gözden geçirilişinde, daha önce elle yazılan tüm FPU komutları bu kez biçimsel yöntem kullanarak yeniden yazıldı. Ne yazık ki bu yeni bir hata getirdi.son anda elle yazılmış bir mikrokod değiştirilirken yanlışlıkla iki mikrokomutun adlarının yerlerini değiştirdiler. Sonuç olarak tüm yenileme boşa gitti. Çünkü böyle hatalar gelişme süresinden altı ile sekiz hafta götürürler ve böylece biçimsel metodun yonga tasarımının her tür işi için geliştirilmesi gerektiği ortaya çıktı. Günümüzde Inmoslaki ekip İngiltere'deki tüm araştırma grupları gibi bu işle uğraşmakta. Inmos'un geliştirdiği ve "Şişman Freddie" olarak bilinen CAD sistemi, toplayıcılar gibi üniteleri, daha küçük ve basit altüniteier olarak yongaya tanımlayan hiyerarşik bir donanım tasarım dili (hardware design language-hdl) kullanmaktadır. Bu alt-üniteler ilerde mantıksal "VE" (and) ve "VEYA" (or) işlem çıktılarını veren en düşük düzeyli transistöre kadar bölünürler. (Mantık geçitleri iki sinyal alırlar: iki sinyal "açık" "TOPLA" (add); bir sinyal "açık" "VEYA" (or) demektir.) Bu şekilde çalışmak tasarımcıların sık kullanılan bileşenler hakkında daha sonraki tasarımlarda kullanmak üzere bir kitaplık oluşturmasını sağlar.
5 Bölüm 2: Occam ile Program Kanıtlanması Araştırmacılar iki nedenden ötürü oceam'ı biçimsel yöntem programlama dili olarak seçtiler. İlk olarak, diğer dillerin aksine, occam'la birkaç işin birarada yapıldığı programlar yazmak olasıdır. Bu olay, eğer FPU'daki bazı yazmaçların ve aritmetik ünitelerin sıralı hareketlerinin program tarafından anlatımı içinse kesinlikle gereklidir. Örneğin occam'ın SEQ ve PAR adı verilen iki işlemi vardır. SEQ ar - dışık (sequentlal) anlamına gelir ve bir grup işlemin arka arkaya yapılacağını belirtir. PAR ise koşut (parıllel) anlamındadır ve bir grup işlemin aynı anda yapılacağını belirtir. Aşağıdaki tanımlama A,B ve C işlemlerinin Şekil Vdeki gibi yapılacağını anlatır. PAR A SEQ B C A testi / \ test2 actionl (Occam'da içeriye yazarak SEQ işleminin B ve C Özerinde, PAR işleminin ise A ve ŞEQ üzerinde etkili olduğu belirtilir.) \ / finalacöon J actton2 B C Time \ test 1 / \ test 2 / \ action 1 action 2 linalaction fınalaction \ / I İkinci olarak, occam'ın çok iyi tanımlanmış matematiksel özellikleri vardır ve bunlar occam programlarıyla kanıtlamayı Basic ve Fortran gibi dillerle yapılmış programlarla kanıtlamaktan daha kolay kılar. Bu kanıtlara ait kurallar, Edinburgh'tan Robin Milner ve Oxford'dan Tony Hoare'un teorik çalışmaları esas alınarak, yine Tony Hoare ve Bili Roscoe tarafından Oxford'da geliştiril* di. Occam'ın kuralları, programlar arasındaki bir grup cebirsel eşitliktir. Cebirde ax(b+c)=(axb)+(axc) eşitlikleri olduğu gibi, occam programları işlemleri arasında da benzer eşitlikler vardır. SEQ tmt acttonl (NOT**) «Cüon2 «namctton III tast SEO acüonl (NOT test) SEO actkxı2 «namction Bu eşitliklerin en basitlerinden biri de yukarıdaki dağılma özelliğine benzerlik gösterir. Bir programın, uygulanan test doğruysa action 1 tarafına, eğer test yanlışsa action 2 tarafına, ama sonuçta kesinlikle final action tarafına hareket ettiği bir sapak noktasını (branchlng polnt) ele alalım. Final Action, eğer test doğruysa önce actionl daha sonra flnal-actıon veya eğer test yanlışsa önce actlon2 daha sonra flnal-actıon durumunu belirtmekle eşdeğerdir. Y ukarıdaki kural, programların ortak noktalarında onların boyutunu küçültmek için kullanılır. Diğer kurallar ve kombinasyonları, programın yaptığı işi değiştirmeden yolunu değiştirmek açısından kullanıcıya yardımcı olur. D "HDL'nin doğruluğunu kanıtlamak hala bir sorundur. HDL bileşenlerin nasıl davrandıklarını değil ne şekilde bağlanacaklarını tanımlar.,. Inmos'un bugünkü CAD sistemi kuralları otomatik olarak kontrol edebilir. Her bileşenin tanımında o bileşenin nasıl kullanılacağını anlatan bir yönetmelik vardır. Örneğin bazı bileşenlerin sınırlarında üretim toleransları-için boş yer bırakmak gereklidir. Eğer tasarımcı bu tip bileşenleri çok yakına getirirse CAD sistemi tasarımcıyı uyarır ve tasarımı veritabanma eklemeyi reddeder. Buna ek olarak, tasarımcı bir modülün planını bitirdiği zaman, doğru bileşenlerin kullanılıp doğru bağlan-dıkları HDL tanımlamalarına göre kontrol edilir. Bu sistem tasarımcıların HDL sistemine uygun devreler üretmelerini sağlar. HDL'nin doğruluğunu kanıtlamak hala bir sorundur. HDL bileşenlerin nasıl davrandıklarını değil ne şekilde bağlanacaklarını tanımlar. Günümüzde tasarımcılar bunu kontrol etmek için bilgisayar kullanmaktadırlar. Fakat Inmos'un T800 deneyiminde olduğu gibi bu da hataları önleme konusunda güvenilir olmaktan uzaktır. Inmos ekibi bugün her bileşenin özelliklerinin Z tanımlamalarını HDL kitaplığına eklemektedirler, Tasarımcılar bir kere yongayı planladılar mı, tanımlamaları kullanarak yonganın tasarımda beklenen özellikleri karşıladığı kanıtlanabilir. Sistem tasarımcıların donanım ve yazılım, yüksek düzeyle düşük düzey arasında hareket etmesine izin verir. Bu büyük ölçüde verimlürği artırır. Bütün bunlar Kapalı bir kutu olan modern bilgisayar bilimini mühendislik disiplinine çevirmek için harcanan büyük çabanın bir parçasıdır, Kimse bir inşaat mühendisinden bir köprüyü ayakta durana kadar iki üç kez yapmasını beklemez. Biçimsel yöntemin yayılmasıyla, elektronik mühendisleri tarasımlarında aynı güvenilirliğe u^jşıfibyıt< ummakta, ürünlerini daha güv«b&)v$ rucuza üretmeye çalışmaktadırlar.^ ; 6 IıL-.
Bilgisayar Mimarisi Nedir?
BİLGİSAYAR MİMARİSİ Bilgisayar Mimarisi Nedir? Bilgisayar mimarisi, diğer mimariler gibi, bir yapı kullanıcısının ihtiyaçlarını belirleme ve bu ihtiyaçları ekonomik ve teknolojik kısıtlamalar dahilinde
DetaylıBilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN
Bilgisayar Mühendisliğine Giriş Yrd.Doç.Dr.Hacer KARACAN Mikroişlemci Nedir? Bir bilgisayarın en önemli parçası Mikroişlemcisidir. Hiçbir bilgisayar mikroişlemci olmadan çalışamaz. Bu nedenle Mikroişlemci
DetaylıBölüm 3: Vektörler. Kavrama Soruları. Konu İçeriği. Sunuş. 3-1 Koordinat Sistemleri
ölüm 3: Vektörler Kavrama Soruları 1- Neden vektörlere ihtiyaç duyarız? - Vektör ve skaler arasındaki fark nedir? 3- Neden vektörel bölme işlemi yapılamaz? 4- π sayısı vektörel mi yoksa skaler bir nicelik
DetaylıC# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler
C# Programlama Dili İlk programımız Tür dönüşümü Yorum ekleme Operatörler 1 İlk Programımız Bu program konsol ekranına Merhaba dünya! yazıp kapanır. Programı geçen derste anlatıldığı gibi derleyin, sonra
Detaylı11.DERS Yazılım Testi
11.DERS Yazılım Testi 1 Yazılım Testi Bir programda hata bulma amacıyla icra edilen bir süreçtir. İyi bir test koşulu henüz ortaya çıkarılmamış bir hatayı tespit eden test koşuludur. Yazılım testinin önemi
DetaylıYrd.Doç.Dr. Celal Murat KANDEMİR. Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit dizisi) kümesi ile temsil edilmesidir.
Bilgisayar Mimarisi İkilik Kodlama ve Mantık Devreleri Yrd.Doç.Dr. Celal Murat KANDEMİR ESOGÜ Eğitim Fakültesi - BÖTE twitter.com/cmkandemir Kodlama Kodlama (Coding) : Bir nesneler kümesinin bir dizgi
DetaylıAlgoritma ve Akış Diyagramları
Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları
DetaylıExcel' de formüller yazılırken iki farklı uygulama kullanılır. Bunlardan;
7. FORMÜLLER SEKMESİ Excel in en çok kullanılan yönü hesaplama yönüdür. Hesaplamalar Formüller aracılığıyla yapılır. Formüller sekmesi anlatılırken sık kullanılan formüller ve formül yazımı da anlatılacaktır.
DetaylıTemel Mikroişlemci Tabanlı Bir Sisteme Hata Enjekte Etme Yöntemi Geliştirilmesi. Buse Ustaoğlu Berna Örs Yalçın
Temel Mikroişlemci Tabanlı Bir Sisteme Hata Enjekte Etme Yöntemi Geliştirilmesi Buse Ustaoğlu Berna Örs Yalçın İçerik Giriş Çalişmanın Amacı Mikroişlemciye Hata Enjekte Etme Adımları Hata Üreteci Devresi
DetaylıBilgisayarda Programlama. Temel Kavramlar
Bilgisayarda Programlama Temel Kavramlar KAVRAMLAR Programlama, yaşadığımız gerçek dünyadaki problemlere ilişkin çözümlerin bilgisayarın anlayabileceği bir biçime dönüştürülmesi / ifade edilmesidir. Bunu
DetaylıPROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.
PROGRAMLAMAYA GİRİŞ Öğr. Gör. Ayhan KOÇ Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay., 2007 Algoritma ve Programlamaya Giriş, Ebubekir YAŞAR, Murathan Yay., 2011
DetaylıÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA
PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA GİRİŞ Bilgisayarların önemli bir kullanım amacı, veri ve bilgilerin kullanılarak var olan belirli bir problemin çözülmeye çalışılmasıdır. Bunun için, bilgisayarlar
DetaylıFORMÜLLER VE FONKSİYONLAR
C FORMÜLLER VE FONKSİYONLAR Konuya Hazırlık 1. Excel de formül kullanmanın faydalarını açıklayınız. Formüller, bir sayfadaki verileri kullanarak işlem yapan denklemlerdir. Bir formülde, aynı sayfadaki
DetaylıBir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir.
İşaretli Tamsayı Gösterimi 1. İşaretli Büyüklük Bir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir. Örnek
DetaylıUzaktan Eğitim Uygulama ve Araştırma Merkezi
JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Veri Tipleri ve Özelilkleri Değişken Tanımlama Kuralları Değişken Veri Tipi Değiştirme (Type Casting) Örnek Kodlar Java Veri Tipleri ve Özelilkleri
DetaylıBTP 207 İNTERNET PROGRAMCILIĞI I. Ders 8
BTP 27 İNTERNET PROGRAMCILIĞI I Ders 8 Değişkenler 2 Tamsayı Değerler (Integer) Tamsayılar, tabanlı (decimal), 8 tabanlı (octal) veya 6 tabanlı (hexadecimal) olabilir. 8 tabanındaki sayıları belirtmek
DetaylıAlgoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi
Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları Veri yapısı, bilginin anlamlı sırada bellekte veya disk, çubuk bellek gibi saklama birimlerinde tutulması veya saklanması şeklini gösterir. Bilgisayar
DetaylıİŞLEMCİLER (CPU) İşlemciler bir cihazdaki tüm girdilerin tabii tutulduğu ve çıkış bilgilerinin üretildiği bölümdür.
İŞLEMCİLER (CPU) Mikroişlemci Nedir? Mikroişlemci, hafıza ve giriş/çıkış birimlerini bulunduran yapının geneline mikrobilgisayar; CPU' yu bulunduran entegre devre çipine ise mikroişlemci denir. İşlemciler
DetaylıBİÇİMSEL YÖNTEMLER (FORMAL METHODS) Betül AKTAŞ Suna AKMELEZ
BİÇİMSEL YÖNTEMLER (FORMAL METHODS) Betül AKTAŞ 14011021 Suna AKMELEZ 14011050 Biçimsel Yöntemler Nedir? Nerede Kullanılır? Biçimsel Tasarım Biçimsel Yöntemlerin Yararları Biçimsel Yöntemlerin Zayıf Yönleri
DetaylıMAK 1005 Bilgisayar Programlamaya Giriş. BİLGİSAYARA GİRİŞ ve ALGORİTMA KAVRAMI
MAK 1005 Bilgisayar Programlamaya Giriş Uludağ Üniversitesi, Mühendislik Fakültesi Makine Mühendisliği Bölümü BİLGİSAYARA GİRİŞ ve ALGORİTMA KAVRAMI Prof. Dr. Necmettin Kaya 1 KONULAR 1. Bilgisayara giriş,
DetaylıMikroişlemcilerde Aritmetik
Mikroişlemcilerde Aritmetik Mikroişlemcide Matematiksel Modelleme Mikroişlemcilerde aritmetik işlemler (toplama, çıkarma, çarpma ve bölme) bu iş için tasarlanmış bütünleşik devrelerle yapılır. Bilindiği
Detaylı18.034 İleri Diferansiyel Denklemler
MIT AçıkDersSistemi http://ocw.mit.edu 18.034 İleri Diferansiyel Denklemler 2009 Bahar Bu bilgilere atıfta bulunmak veya kullanım koşulları hakkında bilgi için http://ocw.mit.edu/terms web sitesini ziyaret
DetaylıİSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUVARI LİNEER KRİPTANALİZ
İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUVARI LİNEER KRİPTANALİZ 1. DENEYİN AMACI Bu deney, simetrik şifreleme algoritması kullanılarak şifrelenmiş bir
DetaylıBM202 AYRIK İŞLEMSEL YAPILAR. Yrd. Doç. Dr. Mehmet ŞİMŞEK
BM202 AYRIK İŞLEMSEL YAPILAR Yrd. Doç. Dr. Mehmet ŞİMŞEK Derse Genel Bakış Dersin Web Sayfası http://www.mehmetsimsek.net/bm202.htm Ders kaynakları Ödevler, duyurular, notlandırma İletişim bilgileri Akademik
Detaylı18.034 İleri Diferansiyel Denklemler
MIT AçıkDersSistemi http://ocw.mit.edu 18.034 İleri Diferansiyel Denklemler 2009 Bahar Bu bilgilere atıfta bulunmak veya kullanım koşulları hakkında bilgi için http://ocw.mit.edu/terms web sitesini ziyaret
DetaylıBILGISAYAR ARITMETIGI
1 BILGISAYAR ARITMETIGI Sayısal bilgisayarlarda hesaplama problemlerinin sonuçlandırılması için verileri işleyen aritmetik buyruklar vardır. Bu buyruklar aritmetik hesaplamaları yaparlar ve bilgisayar
DetaylıSAYILAR DOĞAL VE TAM SAYILAR
1 SAYILAR DOĞAL VE TAM SAYILAR RAKAM: Sayıları ifade etmek için kullandığımız 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 sembollerinden her birine rakam denir. Soru: a ve b farklı rakamlar olmak üzere a + b nin alabileceği
DetaylıKONTROL VE OTOMASYON KULÜBÜ
KONTROL VE OTOMASYON KULÜBÜ C DİLİ İLE MİKROKONTROLÖR PROGRAMLAMA EĞİTİMİ Serhat Büyükçolak Ahmet Sakallı 2009-2010 Güz Dönemi Eğitimleri Mikrokontrolör Gömülü sistemlerin bir alt dalı olan mikrokontrolör
DetaylıBaşlayanlara AKTİF MATEMATİK
KPSS - YGS - DGS - ALES Adayları için ve 9. sınıfa destek 0 dan Başlayanlara AKTİF MATEMATİK MEHMET KOÇ ÖNSÖZ Matematikten korkuyorum, şimdiye kadar hiç matematik çözemedim, matematik korkulu rüyam! bu
DetaylıC PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI
C PROGRAMLAMA DİLİ YRD.DOÇ.DR. BUKET DOĞAN 1 PROGRAM - ALGORİTMA AKIŞ ŞEMASI Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Algoritma bir sorunun
DetaylıGöstericiler (Pointers)
C PROGRAMLAMA Göstericiler (Pointers) C programlama dilinin en güçlü özelliklerinden biridir. Göstericiler, işaretçiler yada pointer adı da verilmektedir. Gösterici (pointer); içerisinde bellek adresi
DetaylıSevdiğim Birkaç Soru
Sevdiğim Birkaç Soru Matematikte öyle sorular vardır ki, yanıtı bulmak önce çok zor gibi gelebilir, sonradan saatler, günler, aylar, hatta kimi zaman yıllar sonra yanıtın çok basit olduğu anlaşılır. Bir
DetaylıGiriş MİKROİŞLEMCİ SİSTEMLERİ. Elektronik Öncesi Kuşak. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Kuşak. Bilgisayar teknolojisindeki gelişme
Giriş MİKROİŞLEMCİ SİSTEMLERİ Bilgisayar teknolojisindeki gelişme Elektronik öncesi kuşak Elektronik kuşak Mikroişlemci kuşağı Yrd. Doç. Dr. Şule Gündüz Öğüdücü 1 Bilgisayar Tarihi Elektronik Öncesi Kuşak
DetaylıLOJİK İFADENİN VE-DEĞİL VEYA VEYA-DEĞİL LOJİK DİYAGRAMLARINA DÖNÜŞTÜRÜLMESİ
LOJİK İFADENİN VE-DEĞİL VEYA VEYA-DEĞİL LOJİK DİYAGRAMLARINA DÖNÜŞTÜRÜLMESİ Sayısal tasarımcılar tasarladıkları devrelerde çoğu zaman VE-Değil yada VEYA-Değil kapılarını, VE yada VEYA kapılarından daha
DetaylıBilgisayar Mimarisi ve Organizasyonu Giriş
+ Bilgisayar Mimarisi ve Organizasyonu Giriş Bilgisayar Mimarisi Bilgisayar Organizasyonu Programcının görebileceği bir sistemin nitelikleri Bir programın mantıksal yürütülmesi üzerinde direk bir etkisi
DetaylıHatalar ve Bilgisayar Aritmetiği
Hatalar ve Bilgisayar Aritmetiği Analitik yollardan çözemediğimiz birçok matematiksel problemi sayısal yöntemlerle bilgisayarlar aracılığı ile çözmeye çalışırız. Bu şekilde Sayısal yöntemler kullanarak
DetaylıBİLGİSAYAR DESTEKLİ TASARIM AUTOCAD DERSİ. 1. HAFTA 27.09.2012 Öğr. Gör. Serkan ÖREN
BİLGİSAYAR DESTEKLİ TASARIM AUTOCAD DERSİ 1. HAFTA 1 AutoCAD, tüm dünyada başta mühendisler ve mimarlar tarafından kullanılan, dünyaca tanınan yazılım firması Autodesktarafından hazırlanan, bilgisayar
DetaylıSAYISAL ELEKTRONİK. Ege Ü. Ege MYO Mekatronik Programı
SAYISAL ELEKTRONİK Ege Ü. Ege MYO Mekatronik Programı BÖLÜM 2 Sayı Sistemleri İkilik, Onaltılık ve İKO Sayılar İkilik Sayı Sistemi 3 Çoğu dijital sistemler 8, 16, 32, ve 64 bit gibi, 2 nin çift kuvvetleri
DetaylıVEKTÖR UZAYLARI 1.GİRİŞ
1.GİRİŞ Bu bölüm lineer cebirin temelindeki cebirsel yapıya, sonlu boyutlu vektör uzayına giriş yapmaktadır. Bir vektör uzayının tanımı, elemanları skalar olarak adlandırılan herhangi bir cisim içerir.
Detaylıİleri Diferansiyel Denklemler
MIT AçıkDersSistemi http://ocw.mit.edu 18.034 İleri Diferansiyel Denklemler 2009 Bahar Bu bilgilere atıfta bulunmak veya kullanım koşulları hakkında bilgi için http://ocw.mit.edu/terms web sitesini ziyaret
DetaylıDers Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS. Mantık Devreleri EEE307 5 3+0 3 3
DERS BİLGİLERİ Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS Mantık Devreleri EEE307 5 3+0 3 3 Ön Koşul Dersleri Dersin Dili Dersin Seviyesi Dersin Türü İngilizce Lisans Zorunlu / Yüz Yüze Dersin
DetaylıGünümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır.
I. GİRİŞ Günümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır. İnsanların elle yaptığı ve yapmakta olduğu bir çok
DetaylıNX Motion Simulation:
NX Motion Simulation: Mekanizma Hareket Analizi UNIGRAPHICS NX yazılımının modüllerinden biri olan NX Motion Simulation, NX Dijital Ürün Tasarımı ailesinin mühendislik bileşenlerinden birisidir. Motion
DetaylıBilgisayar Programlama MATLAB
What is a computer??? Bilgisayar Programlama MATLAB Prof. Dr. İrfan KAYMAZ What Konular is a computer??? MATLAB ortamının tanıtımı Matlab sistemi (ara yüzey tanıtımı) a) Geliştirme ortamı b) Komut penceresi
DetaylıAKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ
GİRİŞ AKIŞ ŞEMASI Bir önceki ünitede algoritma, bilgisayarda herhangi bir işlem gerçekleştirmeden ya da program yazmaya başlamadan önce gerçekleştirilmesi düşünülen işlemlerin belirli bir mantık ve plan
DetaylıNesne Tabanlı Programlama
Nesne Tabanlı Programlama Ders Notu - 1 (Değerler, Değişkenler, İşleçler, Tip Dönüşümleri, Mantıksal Operatörler) Dicle Üniversitesi Mühendislik Fakültesi Elektrik Elektronik Mühendisliği Bölümü 1 Değerler
DetaylıFatih University- Faculty of Engineering- Electric and Electronic Dept.
SAYISAL DEVRE TASARIMI EEM122 Ref. Morris MANO & Michael D. CILETTI SAYISAL TASARIM 4. Baskı Fatih University- Faculty of Engineering- Electric and Electronic Dept. SAYISAL DEVRE NEDİR? Mühendisler, elektronik
DetaylıNesne Yönelimli Programlama
1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Not: Bu dersin sunumları, Java Programlama Dili ve Yazılım Tasarımı, Altuğ B. Altıntaş, Papatya
DetaylıArş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015
Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 KONU BAŞLIKLARI 1. Yazılım Mimarisi nedir? 2. Yazılımda Karmaşıklık 3. Üç Katmanlı Mimari nedir? 4. Üç Katmanlı Mimari
DetaylıBÖLÜM 3 OPERAT A ÖRLER - 19 -
BÖLÜM 3 OPERATÖRLER - 19 - 3.1 Operatörler Hakkında Yukarıdaki örnekleri birlikte yaptıysak = işaretini bol bol kullandık ve böylece PHP'nin birçok operatöründen biriyle tanıştık. Buna PHP dilinde "atama
DetaylıMimari Esaslar. Mikroişlemcinin mimari esasları; Kaydediciler Veriyolları İş hatları dır.
Mimari Esaslar Mikroişlemcinin mimari esasları; Kaydediciler Veriyolları İş hatları dır. Bu unsurların büyüklüğü, sayısı ve yapısı o işlemcinin yeteneklerini belirler. Mimari farlılıklarda; bu konularda
Detaylı10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI
10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI Sayısal Sistemler Sayısal sistem, sayıları temsil eden simgeler için bir yazma sistemi yani matematiksel bir gösterim sistemidir.
DetaylıSAYISAL ÇÖZÜMLEME. Yrd.Doç.Dr.Esra Tunç Görmüş. 1.Hafta
SAYISAL ÇÖZÜMLEME Yrd.Doç.Dr.Esra Tunç Görmüş 1.Hafta Sayısal çözümleme nümerik analiz nümerik çözümleme, approximate computation mühendislikte sayısal yöntemler Computational mathematics Numerical analysis
DetaylıHer bir kapının girişine sinyal verilmesi zamanı ile çıkışın alınması zamanı arasında çok kısa da olsa fark bulunmaktadır -> kapı gecikmesi
Kapılardaki gecikme Her bir kapının girişine sinyal verilmesi zamanı ile çıkışın alınması zamanı arasında çok kısa da olsa fark bulunmaktadır -> kapı gecikmesi Kapılardaki gecikme miktarının hesaplanması
DetaylıJAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ
JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ Java programlama dili, Java SUN bilgisayar şirketi tarafından 1991 yılında geliştiril Program bloklar halinde yazılır ve bloklar { } ile oluşturulur. Komutlar aynı satıra
DetaylıDERS BİLGİ FORMU. IV Türkçe Zorunlu Ders. Haftalık. Ders. Okul Eğitimi Süresi. Saati
DERS BİLGİ FORMU DERSİN ADI SİSTEM ANALİZİ VE TASARIMI I BÖLÜM PROGRAM DÖNEMİ DERSİN DİLİ DERS KATEGORİSİ ÖN ŞARTLAR SÜRE VE DAĞILIMI KREDİ DERSİN AMACI ÖĞRENME ÇIKTILARI VE YETERLİKLER DERSİN İÇERİĞİ
DetaylıBİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1
BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1 Ekrana Metin Yazdırmak Ekranda metin yazdırmak istendiğinde print komutu kullanılır. Kullanımı aşağıda verilmiştir. Parantez içinde
DetaylıBOOLEAN İŞLEMLERİ Boolean matematiği sayısal sistemlerin analizinde ve anlaşılmasında kullanılan temel sistemdir.
BOOLEAN MATEMATİĞİ İngiliz matematikçi George Bole tarafından 1854 yılında geliştirilen BOOLEAN matematiği sayısal devrelerin tasarımında ve analizinde kullanılması 1938 yılında Claude Shanon tarafından
DetaylıBilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ
Ders 10 LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ LINUX de Programlama LINUX işletim sistemi zengin bir programlama ortamı sağlar. Kullanıcılara sistemi geliştirme olanağı sağlar.
DetaylıBİLİŞİM TEKNOLOJİLERİNİN TEMELLERİ
BİLİŞİM TEKNOLOJİLERİNİN TEMELLERİ 2.HAFTA Yonga Seti (Chipset) Anakart üzerinde yer alan bir dizi işlem denetçileridir. Bu denetçiler anakartın üzerindeki bilgi akış trafiğini denetler. Bilgisayarın kalitesi,
DetaylıYazılım Çeşitleri. Uygulama Yazılımları. İşletim Sistemleri. Donanım
Yazılım Yazılım Bilgisayarlar üretildikleri anda içlerinde herhangi bir bilgi barındırmadıkları için bir işlevleri yoktur. Bilgisayarlara belirli yazılımlar yüklenerek işlem yapabilecek hale getirilirler.
DetaylıHem lw hem de sw komutlarının ofseti 16-bitlik işaretli tamsayıdır.
DOĞU AKDENİZ ÜNİVERSİTESİ BAHAR 2012-2013 BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BLGM-324 BİLGİSAYAR MİMARİSİ DENEY #2 DİZİLERE ERİŞİMDE MIPS BELLEK TALİMATLARI Amaç: Veri bölütü kullanımını ve tek-modüllü dizi
DetaylıGİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ
GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ Giriş/Çıkış deyimlerine neden gerek vardır? Biçimli giriş/çıkış deyimleri, Klavye den veri girişi Dosya dan veri okuma ve dosyaya yazma Ekrana sonuçları yazdırma, Yazıcı,
DetaylıTEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma
TEMEL BİLGİSAYAR BİLİMLERİ Programcılık, problem çözme ve algoritma oluşturma Programcılık, program çözme ve algoritma Program: Bilgisayara bir işlemi yaptırmak için yazılan komutlar dizisinin bütünü veya
DetaylıBilgisayar Programlama
Bilgisayar Programlama M Dosya Yapısı Kontrol Yapıları Doç. Dr. İrfan KAYMAZ Matlab Ders Notları M-dosyası Genel tanıtımı : Bir senaryo dosyası (script file) özel bir görevi yerine getirmek için gerekli
Detaylı3.3. İki Tabanlı Sayı Sisteminde Dört İşlem
3.3. İki Tabanlı Sayı Sisteminde Dört İşlem A + B = 2 0 2 1 (Elde) A * B = Sonuç A B = 2 0 2 1 (Borç) A / B = Sonuç 0 + 0 = 0 0 0 * 0 = 0 0 0 = 0 0 0 / 0 = 0 0 + 1 = 1 0 0 * 1 = 0 0 1 = 1 1 0 / 1 = 0 1
DetaylıBilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1
Bilgisayar Mühendisliği Bilgisayar Mühendisliğine Giriş 1 Mühendislik Nedir? Mühendislik, bilim ve matematiğin yararlı cihaz ve sistemlerin üretimine uygulanmasıdır. Örn: Elektrik mühendisleri, elektronik
DetaylıISBN NUMARASI: ISBN NUMARASI: ISBN NUMARASI: ISBN NUMARASI:
Bu formun ç kt s n al p ço altarak ö rencilerinizin ücretsiz Morpa Kampüs yarıyıl tatili üyeli inden yararlanmalar n sa layabilirsiniz.! ISBN NUMARASI: 84354975 ISBN NUMARASI: 84354975! ISBN NUMARASI:
DetaylıOkut. Yüksel YURTAY. İletişim : (264) Sayısal Analiz. Giriş.
Okut. Yüksel YURTAY İletişim : Sayısal Analiz yyurtay@sakarya.edu.tr www.cs.sakarya.edu.tr/yyurtay (264) 295 58 99 Giriş 1 Amaç : Mühendislik problemlerinin bilgisayar ortamında çözümünü mümkün kılacak
DetaylıMAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş
MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş Yard. Doç. Dr. Alper Kürşat Uysal Bilgisayar Mühendisliği Bölümü akuysal@anadolu.edu.tr Ders Web Sayfası: http://ceng.anadolu.edu.tr/ders.aspx?dersid=101
Detaylıİleri Diferansiyel Denklemler
MIT AçıkDersSistemi http://ocw.mit.edu 18.034 İleri Diferansiyel Denklemler 2009 Bahar Bu bilgilere atıfta bulunmak veya kullanım koşulları hakkında bilgi için http://ocw.mit.edu/terms web sitesini ziyaret
DetaylıBilgisayar Mimarisi ve Örgütleşimi (COMPE 331) Ders Detayları
Bilgisayar Mimarisi ve Örgütleşimi (COMPE 331) Ders Detayları Ders Adı Bilgisayar Mimarisi ve Örgütleşimi Ders Kodu COMPE 331 Dönemi Ders Uygulama Saati Saati Laboratuar Kredi AKTS Saati Güz 3 0 0 3 5
DetaylıÖzyineleme (Recursion)
C PROGRAMLAMA Özyineleme (Recursion) Bir fonksiyonun kendisini çağırarak çözüme gitmesine özyineleme (recursion), böyle çalışan fonksiyonlara da özyinelemeli (recursive) fonksiyonlar denilir. Özyineleme,
DetaylıYarım toplayıcının fonksiyonelliği ile 4 x 2 bit ROM hafıza(çok küçük bir hafıza) programlandığının bir örneğini düşünelim:
Başvuru Çizelgeleri Son bölümde sayısal hafıza cihazları hakkında bilgi aldınız, katı-hal cihazlarıyla ikili veri depolamanın mümkün olduğunu biliriz. Bu depolama "hücreleri" katı-hal hafıza cihazlarıyla
DetaylıÜnite 01 Algoritma Geliştirme
Ünite 01 Algoritma Geliştirme Algoritma en yalın tanımıyla bir problemin çözüm aşamalarıdır. Diğer bir ifadeyle problemi çözmek için tespit edilen işlem basamaklarıdır 1. Uyanmak 2. Elimizi yüzümüzü yıkamak.
Detaylı1203608-SIMÜLASYON DERS SORUMLUSU: DOÇ. DR. SAADETTIN ERHAN KESEN. Ders No:5 Rassal Değişken Üretimi
1203608-SIMÜLASYON DERS SORUMLUSU: DOÇ. DR. SAADETTIN ERHAN KESEN Ders No:5 RASSAL DEĞIŞKEN ÜRETIMI Bu bölümde oldukça yaygın bir biçimde kullanılan sürekli ve kesikli dağılımlardan örneklem alma prosedürleri
DetaylıBİLGİSAYAR PROGRAMLAMA
BİLGİSAYAR PROGRAMLAMA Yrd. Doç. Dr. Beytullah EREN beren@sakarya.edu.tr 0264 295 5642 Excel - Hücreler Excel de hücrelere hangi değerler girilebilir? Metin Rakam Tarih ve Saat Formül 1 HÜCRE SEÇİMİ Matematikteki
DetaylıFiziksel Sistemlerin Matematik Modeli. Prof. Neil A.Duffie University of Wisconsin-Madison ÇEVİRİ Doç. Dr. Hüseyin BULGURCU 2012
Fiziksel Sistemlerin Matematik Modeli Prof. Neil A.Duffie University of Wisconsin-Madison ÇEVİRİ Doç. Dr. Hüseyin BULGURCU 2012 Matematik Modele Olan İhtiyaç Karmaşık denetim sistemlerini anlamak için
DetaylıBEDEN EĞİTİMİ I: Haftalık ders 1 saattir (T-0 ) (U-l) (K-0).
I.SINIF-1.YARIYIL TÜRK DİLİ I : Haftalık ders 2 saattir (T-2 ) (U-0) (K-2). Ders İçeriği; % 10 Dil, Diller ve Türk Dili, % 15 Dil Bilgisi, Sözcük ve Cümle % 25 Kelime Türleri % 25 Anlatım Öğeleri ve Anlatım
DetaylıMİNTERİM VE MAXİTERİM
MİNTERİM VE MAXİTERİM İkili bir değişken Boolean ifadesi olarak değişkenin kendisi (A) veya değişkenin değili ( A ) şeklinde gösterilebilir. VE kapısına uygulanan A ve B değişkenlerinin iki şekilde Boolean
DetaylıMerkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ. MİB Yapısı. MİB in İç Yapısı. MİB Altbirimleri. MİB in İç Yapısı
Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ Doç. Dr. Şule Gündüz Öğüdücü http://ninova.itu.edu.tr/tr/dersler/bilgisayar-bilisim-fakultesi/0/blg-1/ Merkezi İşlem Birimi (MİB): Bilgisayarın temel birimi
DetaylıAtatürk Anadolu. Temel Kavramlar Üzerine Kısa Çalışmalar
Atatürk Anadolu Lisesi M A T E M A T İ K Temel Kavramlar Üzerine Kısa Çalışmalar KONYA \ SELÇUKLU 01 MATEMATİK 1. TEMEL KAVRAMLAR 1.1. RAKAM Sayıların yazılmasında kullanılan sembollere rakam denir. Onluk
DetaylıNesne Tabanlı Programlama
Nesne Tabanlı Programlama Ders Notu - 1 Dicle Üniversitesi Mühendislik Fakültesi Elektrik Elektronik Mühendisliği Bölümü 1 Değerler ve Değişkenler Values & Variables 2 1 Değişkenlerin Özellikleri Tipi
DetaylıAlgoritmalar, Akış Şemaları ve O() Karmaşıklık Notasyonu
Algoritmalar, Akış Şemaları ve O() Karmaşıklık Notasyonu Öğr. Gör. M. Ozan AKI r1.0 Algoritmalar (Algorithms) Algoritma, bir problemin çözümünü sağlayan ancak deneme-yanılma ve sezgisel çözüme karşıt bir
DetaylıMicrosoft Excel Formül Yazma Kuralları: 1. Formül yazmak için Formül Araç Çubuğu kullanılır, ya da hücre içerisine çift tıklanarak formül yazılır.
Microsoft Excel Formül Yazma Kuralları: 1. Formül yazmak için Formül Araç Çubuğu kullanılır, ya da hücre içerisine çift tıklanarak formül yazılır. 2. Formüller = eşittir işareti ile başlar. 3. Formüllerde
DetaylıSaklayıcı (veya Yazmaç) (Register)
Saklayıcı (veya Yazmaç) (Register) Genel bir ardışıl devre: Saklayıcılar Ardışıl devre analiz ve sentezi için iyi bir örnektir. Ayrıca daha büyük çaplı ardışıl devrelerin tasarımında kullanılabilirler.
DetaylıBULANIK MANTIK VE SİSTEMLERİ 2014 2015 BAHAR DÖNEMİ ÖDEV 1. Müslüm ÖZTÜRK 148164001004 Bilişim Teknolojileri Mühendisliği ABD Doktora Programı
BULANIK MANTIK VE SİSTEMLERİ 2014 2015 BAHAR DÖNEMİ ÖDEV 1 Müslüm ÖZTÜRK 148164001004 Bilişim Teknolojileri Mühendisliği ABD Doktora Programı Mart 2015 0 SORU 1) Bulanık Küme nedir? Bulanık Kümenin (fuzzy
DetaylıVeritabanı Uygulamaları Tasarımı
Veritabanı Uygulamaları Tasarımı Veri Tabanı Veritabanı yada ingilizce database kavramı, verilerin belirli bir düzene göre depolandığı sistemlere verilen genel bir isimdir. Günümüzde özel veya kamu kuruluşların
DetaylıTEOG. Sayma Sayıları ve Doğal Sayılar ÇÖZÜM ÖRNEK ÇÖZÜM ÖRNEK SAYI BASAMAKLARI VE SAYILARIN ÇÖZÜMLENMESİ 1. DOĞAL SAYILAR.
TEOG Sayma Sayıları ve Doğal Sayılar 1. DOĞAL SAYILAR 0 dan başlayıp artı sonsuza kadar giden sayılara doğal sayılar denir ve N ile gösterilir. N={0, 1, 2, 3,...,n, n+1,...} a ve b doğal sayılar olmak
DetaylıSayısal Devreler ve Sistemler (EE203) Ders Detayları
Sayısal Devreler ve Sistemler (EE203) Ders Detayları Ders Adı Ders Kodu Dönemi Ders Saati Uygulama Saati Laboratuar Saati Kredi AKTS Sayısal Devreler ve Sistemler EE203 Güz 3 0 2 4 6 Ön Koşul Ders(ler)i
DetaylıBilgisayar Donanım 2010 BİLGİSAYAR
BİLGİSAYAR CPU, bellek ve diğer sistem bileşenlerinin bir baskı devre (pcb) üzerine yerleştirildiği platforma Anakart adı verilmektedir. Anakart üzerinde CPU, bellek, genişleme yuvaları, BIOS, çipsetler,
DetaylıFORMÜL ADI (FONKSİYON) FORMÜLÜN YAZILIŞI YAPTIĞI İŞLEMİN AÇIKLAMASI
1 SIKÇA KULLANILAN EXCEL FORMÜLLERİ 1 AŞAĞI YUVARLAMA =aşağıyuvarla(c7;2) 2 YUKARI YUVARLAMA =yukarıyuvarla(c7;2) 3 YUVARLAMA =yuvarla(c7;2) 4 TAVANA YUVARLAMA =tavanayuvarla(c7;5) 5 TABANA YUVARLAMA =TABANAYUVARLA(E2;5)
DetaylıÜNİTE. MATEMATİK-1 Yrd.Doç.Dr.Ömer TARAKÇI İÇİNDEKİLER HEDEFLER DOĞRULAR VE PARABOLLER
HEDEFLER İÇİNDEKİLER DOĞRULAR VE PARABOLLER Birinci Dereceden Polinom Fonksiyonlar ve Doğru Doğru Denklemlerinin Bulunması İkinci Dereceden Polinom Fonksiyonlar ve Parabol MATEMATİK-1 Yrd.Doç.Dr.Ömer TARAKÇI
Detaylı"Gerçek tasarımcı elinde firca ile doğar" iç mimar Anna Malyakina'yı tam anlamıyla tanımlayan bir ifade. Anna çizim yapmaya konuşmayı öğrenmeden
O O LY F RT L Kİ Ş E İS PO "Gerçek tasarımcı elinde firca ile doğar" iç mimar Anna Malyakina'yı tam anlamıyla tanımlayan bir ifade. Anna çizim yapmaya konuşmayı öğrenmeden başlamıştır. Çocukluk döneminde,
DetaylıBMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1
BMT 101 Algoritma ve Programlama I 6. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Veri Tipleri Yük. Müh. Köksal Gündoğdu 2 Veri Tipleri Tam sayı ve Ondalık sayı veri tipleri Veri Tipi Alt Sınıf Üst Sınıf Duyarlı
DetaylıBilgisayarların Gelişimi
Bilgisayarların Gelişimi Joseph Jacquard (1810) Bilgisayar tabanlı halı dokuma makinesi Delikli Kart (Punch Card) Algoritma ve Programlama 6 Bilgisayar Sistemi 1. Donanım fiziksel aygıtlardır. 2. Yazılım
DetaylıBBM 231 Yazmaçların Aktarımı Seviyesinde Tasarım! Hacettepe Üniversitesi Bilgisayar Müh. Bölümü
BBM 231 Yazmaçların Aktarımı Seviyesinde Tasarım! Hacettepe Üniversitesi Bilgisayar Müh. Bölümü Bu derste! Büyük, karmaşık sayısal sistemlerin tasarımı ele alınacaktır. ASM ve ASMD çizgeleri Tasarım Örnekleri
DetaylıBu durumu, konum bazında bileşenlerini, yani dalga fonksiyonunu, vererek tanımlıyoruz : ) 1. (ikx x2. (d)
Ders 10 Metindeki ilgili bölümler 1.7 Gaussiyen durum Burada, 1-d de hareket eden bir parçacığın önemli Gaussiyen durumu örneğini düşünüyoruz. Ele alış biçimimiz kitaptaki ile neredeyse aynı ama bu örnek
DetaylıNesne Yönelimli Programlama
1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Genel Bilgiler Ders konuları 1. Programlamaya Giriş 2. Program Denetimi ve Operatörler 3. Nesnelerin
Detaylı