BLM210 HAFTA 1 INTRODUCTION (GİRİŞ)

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "BLM210 HAFTA 1 INTRODUCTION (GİRİŞ)"

Transkript

1 1 BLM210 HAFTA 1 INTRODUCTION (GİRİŞ) 1.1 REASONS FOR STUDYING CONCEPTS OF PROGRAMMING LANGUAGES (PROGRAMLAMA DİLLERİNİN PRENSİPLERİNİ İNCELEMENİN SEBEPLERİ) Increased capacity to express ideas (Fikirleri ifade etmek için artan kapasite, yeterlik) o Natural languages (doğal diller): The depth at which people can think is influenced by the expresssive power of the language they use. İnsanların düşünce derinliği, kullandıkları dilin ifade gücünden etkilenir. o Programming languages (Programlama dilleri): The languages of program development place limits on: Diller program geliştirme sürecinde aşağıdakilere sınır koyar: Control structures (Kontrol yapıları) Data structures (Veri yapıları) Abstraction (Soyutlama) Algorithm design (Algoritma tasarımı) Software development improves with awareness of a wider variety of languages. Yazılım geliştirme daha geniş çeşitlilikte diller olduğu bilinirse iyileşir. o Although not all languages support all program structures, the features of supporting languages can be used through simulating. The study of programming languages builds an appreciation of valuable language features. Her dil her program yapısını desteklemese de, destekleyen dillerin özellikleri diğer dillerde benzetilerek kullanılabilir. Programlama dillerinin çalışılması dillerin değerli özelliklerini idrak etmeyi sağlar. Example: Associative arrays in Perl can be simulated in C. Örnek: Perl in ilişkili dizi kavramı C de benzetilebilir. Improved background for choosing appropriate languages (Uygun dilleri seçerken ilerlemiş deneyim) Increased ability to learn new languages (Yeni dilleri öğrenmede artan yetenek)

2 2 o Example: Those who have learned object-oriented programming (OOP) concepts will learn C# (C sharp) easier. Örnek: Nesne-yönelimli programlama kavramlarını bilenler C# ı daha kolay öğrenir. o Example: Knowing the grammar of your native language will make you learn a second language more easily. In turn, the second language you learned will make you learn your native language better. Örnek: Kendi anadilinin dilbilgisini iyi bilen kişi ikinci bir dili kolay öğrenir. Öğrendiği ikinci dil, anadilini ona daha da iyi öğretir. o To learn a new language, one must know the vocabulary, fundamental concepts, promotional literature related to programming languages and compilers. Yeni bir dil öğrenmek için, programlama dilleri ve derleyicilere ilişkin söz dağarcığı, temel kavramlar ve gelişen kaynakça bilinmelidir. Better understanding the significance of implementation (Gerçeklemenin önemini daha iyi anlamak) o Knowing implementation issues lets us better understand why they were designed in the way they are. Gerçeklemede karşılaşılan sorunları bilmek, dillerin neden oldukları şekilde tasarlandığını anlamaya yardım eder. o A language can be used more intelligently as it was designed to be used. Diller tasarlandıkları amaca uygun daha akıllı biçimde kullanılabilir. o Understanding implementation issues allows us to visualize how a computer executes various constructs and solve efficiency issues (ex: subprogram calls). Gerçekleme meselelerini bilmek bize bilgisayarın çeşitli program yapılarını koşarken ne yaptığı konusunda fikir verir ve verimlilik konusunda daha dikkatli davranmamızı sağlar (ör: altprogram çağrıları). o Studying compiler design is also related to the previous two items. Derleyici tasarımı da önceki iki maddede ifade edilenlerle ilintilidir. Better use of languages that are already known (Önceden bilinen dillerin iyi kullanımı) Overall advancement of computing (Hesaplama/programlama nın bütünüyle gelişmesi) o Example: Many people believe it would have been better if ALGOL replaced Fortran in early 60 s. Örnek: Birçok insan 60 larda ALGOL, Fortran yerine kullanılmış olsaydı, daha iyi olabilirdi inancında.

3 1.2. PROGRAMMING DOMAINS (PROGRAMLAMA ALANLARI) Scientific applications (Bilimsel uygulamalar) 3 o Digital computers (sayısal hesaplayıcılar), Fortran, ALGOL60 40 s,50 s,60 s o Floating point operations (Kayan nokta: reel sayı işlemleri) o Primary concern is efficiency (Ana kaygı verimlilik) Business applications (İş uygulamaları) o 50 s, COBOL (1960) o Elaborating reports, decimal number and character data, decimal arithmetic Rapor düzenleme, 10 luk taban sayı ve karakter verisi, 10 luk tabanda aritmetik Artificial intelligence (Yapay zeka) o Symbolic rather than numeric computation, flexibility Sayısaldan daha çok sembolik hesaplama, esneklik o LISP (1959), Prolog (70 s), C, Scheme Systems programming (Sistem programlama) o Systems software The operating system (OS) and programming support tools of a computer system Sistem yazılımı İşletim sistemi (OS) ve bilgisayar sisteminin program destek araçları o Lower level features such as software interfaces to external devices are needed. Harici aygıtlara yazılım arayüzleri gibi alt düzey özellikler gerekir. o IBM PL/S Digital BLISS Burroughs Extended ALGOL C, C++ o UNIX operating system (işletim sistemi (written in C, tamamen C de yazıldı)) Web software (Ağ yazılımı) o HTML markup language (işaretleme dili), not a programming language (programlama dili değil) o Java, Scripting languages ( Betik (komut verme) diller) JavaScript, PHP

4 1.3 LANGUAGE EVALUATION CRITERIA (DİL DEĞERLENDİRME ÖLÇÜTLERİ) 4 Basitlik, diklik (ortogonallik), veri tipleri, sözdizimi tasarımı, soyutlama desteği, anlatımcılık (ifade gücü), tip kontrolü, olağandışı durum işleme, kısıtlı örtüşme (farklı ad kullanma) READABILITY = Okunabilirlik WRITABILITY = Yazılabilirlik RELIABILITY = Güvenilirlik In the beginnings, primary concern Efficiency (Başlarda, ana kaygı Verimlilik) Transformation (dönüşüm) ::: Machine (bilgisayar) Human (insan) Transformation (dönüşüm) ::: Coding (kodlama) Maintenance (bakım) Readability (Okunabilirlik) Overall simplicity (Bütüncül basitlik) o Learning a small subset of features Özelliklerin küçük bir alt kümesini öğrenmek o Feature multiplicity: more than one way to perform the same task Özellik çeşitliliği: aynı işi birden fazla yolla yapabilme o Operator overloading (İşleçlere ek anlam yükleme) o Carrying simplicity too far can cause less readable programs. Basitliği çok ileri taşımak daha az okunur programlara yol açabilir. Ex: Assembly language (çevirici dili)

5 5 Orthogonality (Diklik) o A relatively small set of primitive constructs can be combined in a relatively small number of ways to build the control and data structures of the language. Furthermore, every possible combination of primitives is legal and meaningful. Görece az sayıda basit yapı görece az sayıda biçimde bir araya getirilerek dilin kontrol ve veri yapıları oluşturulabilir. Ayrıca, basit yapıların her olası birleştirilmesi geçerli ve anlamlıdır. Ex: Four data types (integer, float, double, character) and two type operators (array, pointer) Ör: 4 veri tipi (tamsayı, kayan nokta, çift duyarlıklı kayan nokta, karakter) ve 2 tip işleci (dizi, işaretçi) o Orthogonality follows from symmetry of relations among primitives. Diklik basit yapılar arasındaki ilişkinin simetrisiyle bağlantılıdır. Example: IBM mainframe (ana sistem - büyük bilgisayar) not orthogonal (dik değil) Example: VAX orthogonal (dik) o Orthogonality simplicity (Diklik basitlik) o Too much orthogonality can cause problems such as unnecessary complexity, an explosion of combinations of primitive constructs (because there are too many). Çok fazla diklik gereksiz karmaşıklık ve basit yapıların (çok sayıda oldukları için) birleşmelerinde sayıca patlama gibi sorunlara yol açabilir.

6 6 o Simplicity: combination of relatively small number of primitive constructs and limited use of the concept of orthogonality Basitlik: görece az sayıda basit yapıların birleştirilebilmesi ve diklik kavramının sınırlı kullanımı Data types (Veri tipleri) Syntax design (Sözdizimi = gramer = dilbilgisi tasarımı) o Special words (özel sözcükler) Ex: C while, class, for end to terminate compound groups (birleşik grupları sonlandırmak için) Fortran95, Ada end if, end loop o Using reserved words for variable names is confusing. Ayrılmış sözcükleri değişken adlarında kullanmak kafa karıştırıcıdır. o Form and meaning (biçim ve anlam) Writability (Yazılabilirlik) Semantics (meaning) should follow directly from syntax or form. Anlam biçim veya sözdiziminden çıkarılabilmeli. A measure of how easily a language can be used to create programs for a chosen problem domain Bir problem alanında bir dilin program oluşturmak için ne kolaylıkla kullanılabileceğinin ölçüsü Comparisons must be in the same problem domain. Karşılaştırma aynı problem alanında olmalı. o Ex: Visual Basic (VB) is more writeable than C for GUI (graphical user interface) design. On the other hand, C is more writeable than VB for systems programming. Ör: Visual Basic (VB) grafik kullanıcı arayüzü (GUI) yazmada C den daha üstündür. C ise sistem yazılımı üretmede daha yazılabilirdir. Simplicity and orthogonality (Basitlik ve diklik) Support for abstraction (Soyutlama desteği) o Abstraction The ability to define and then use complicated structures or operations in ways that allow many of the details to be ignored Soyutlama Detayları göz ardı etmeye izin veren şekilde, karmaşık yapı ve işlemleri tanımlayıp kullanabilme yeteneği

7 7 o Degree of abstraction of a language and naturalness of expression are vital for writability. Bir dilin soyutlama derecesi ve ifade doğallığı yazılabilirlik açısından önemlidir. o Ex: Process abstraction subprogram calls Ör: Süreç (işlem) soyutlaması altprogram çağrıları o Ex: Data abstraction binary tree implementation in C++ with a class and two pointers Ör: Veri soyutlaması C++ da bir sınıf ve 2 işaretçiyle ikili ağaç gerçeklemesi Expressivity (İfade edebilirlik) o It means that a language has relatively convenient, rather than cumbersome, ways of specifying computations. Bir dilin zor değil, görece uygun yollarla hesaplamaları belirtebilmesidir Reliability (Güvenilirlik) Ex: Ex: for (counting loops (sayan döngüler)) Reliable program: program which performs to its specifications under all conditions Güvenilir program: her koşulda tarifine uygun çalışan program Type checking (tip kontrolü) o Type checking done at either compile or run time. Compile time is desirable. Tip kontrolü derleme zamanında ya da çalışma zamanında yapılmalı. Derleme zamanı daha tercih edilir. o Ex: Type check failure: Subprogram calls in C (corrected later) Ör: Tip kontrolü arızası: C deki altprogram çağrıları (sonra düzeltildi) Exception handling (olağandışı durum işleme) o Ada, C++, Java, C# ( ) C (X) Aliasing (örtüşme = başka isim kullanabilme) o having two or more distinct names that can be used to access the same memory cell aynı bellek hücresine erişmek için iki ya da daha fazla isim kullanma Ex: Pointers in C (C de işaretçiler) Readability and writability (okunabilirlik ve yazılabilirlik) Cost (Maliyet) Cost of training programmers (programcıları eğitme maliyeti) Cost of writing programs (writability)

8 8 Program yazma maliyeti (yazılabilirlik) Cost of compiling programs (programları derleme maliyeti) Cost of executing programs (programları çalıştırma maliyeti) o Run-time checks slows programs (Çalışma zamanı kontrolleri yavaşlamaya yol açar) Compilers may optimize code for faster execution. Derleyiciler daha hızlı program çalışması için kodu iyileştirebilirler. Cost of language implementation systems (dilin gerçekleme sistemlerinin maliyeti) Cost of poor reliability (Zayıf güvenilirlik maliyeti) Cost of maintaining programs (programlara bakım yapma (değiştirme) maliyeti) Development, maintenance and reliability are the most important cost factors. Geliştirme, bakım ve güvenilirlik en önemli üç maliyet öğesidir Other criteria (Öbür ölçütler) Portability (taşınabilirlik) Generality and well-definedness (Genellik ve iyi-tanımlanmışlık) 1.4. INFLUENCES ON LANGUAGE DESIGN (DİL TASARIMI ÜZERİNDEKİ ETKİLER) Other factors than those in previous section influence language design. Önceki bölümde söz edilenlerden başka etkenler de dil tasarımını etkiler Computer architecture (Bilgisayar mimarisi) von Neumann architecture (mimarisi), imperative languages (buyurgan diller) Programs and data stored in same memory Programlar ve veri aynı bellekte tutulur CPU (central processing unit) which executes instructions and memory are separate. Komutları koşan (çalıştıran) merkezi işlem birimi (CPU = işlemci) ve bellek birbirinden ayrıdır.

9 von Neumann architecture is shown below (von Neumann mimarisi aşağıdaki gibidir). 9 Memory = bellek (hafıza) Results of operations = işlemlerin sonuçları Instructions and data = komutlar ve veriler Input and output devices = Girdi ve çıktı cihazları Arithmetic and logic unit = aritmetik ve mantık birimi Control unit = kontrol birimi Imperative languages (Buyurgan diller) o Variables (değişkenler) Memory cells (Bellek hücreleri) o Assignment statements (atama komutları) piping operation (iletişim tüneli işlemi) Operands in expressions are piped from memory to CPU İfadelerdeki işlenenler bellekten CPU ya iletilir. The result of evaluating the expression is piped back to the memory cell represented by the left side of the assignment. Değeri hesaplanan ifadenin sonucu, atama komutunun soluyla gösterilen bellek hücresine iletilir. Executing iterations is fast because (Yinelemelerin koşulması hızlıdır çünkü) Instructions are stored in adjacent cells in memory. Komutlar bellekte komşu hücrelerde tutulur. Repeating the execution of a section of code requires only a branch instruction.

10 10 Bir kod parçasının koşmasını tekrarlamak yalnızca bir dallanma komutu gerektirir. Although recursion is sometimes more natural, its use may be discouraged because iterations are efficient. Bazen daha doğal olsa da, yinelemelerin koşulması verimli olduğundan, özyinelemelerin kullanımından vazgeçilebilir. FETCH-EXECUTE cycle (AL-KOŞ döngüsü) initialize = ilk değerini vermek repeat = tekrarla forever = sonsuza dek end = bitir point to = işaret etmek program counter = program sayacı Program counter CPU register holding the memory address of the next instruction to be executed Program sayacı Koşulacak sıradaki komutun bellek adresini tutan işlemci yazmacı increment = değerini bir attır decode = şifre çöz (anlamlandır) execute = koş (çalıştır) decode the instruction examine the instruction to specify the action it specifies komut şifresini çözme komutun yapacağı eylemi belirlemek için incelenmesi Program terminates with a Stop instruction. Dur komutuyla program çalışması durur. Stop rarely executed ( Dur nadiren koşulur) Instead, control transfers from the OS to a user application for execution and then back to the OS when the execution is complete. Bunun yerine, kontrol işletim sisteminden koşması için bir kullanıcı uygulamasına sonra da koşma bitince yeniden işletim sistemine aktarılır.

11 11 In a computer system where multiple user programs are in memory at the same time, the process is far more complex. Aynı anda birden çok kullanıcı programının bellekte olduğu durumlarda, süreç daha karmaşıktır. Functional = applicative languages (İşlevsel = uygulayıcı diller) o Means of computation is by applying functions on given parameters. Hesaplama, verilen parametrelere fonksiyonlar (işlevler) uygulanarak yapılır. o Programming can be done in a functional language without the kind of variables that are used in imperative languages, without assignment statements, and without iteration. Buyurgan dillerdekine benzer değişkenler, atama komutları ve yinelemeler olmadan; işlevsel dillerde programlama yapılabilir. o Although functional languages (like Scheme) have many benefits, they are not likely to replace imperative languages until a non-von Neumann architecture computer, allowing the eficient execution of programs in functional languages, is designed and widely used. İşlevsel dillerin (Scheme gibi) çok yararları olduğu üstünde görüşler olmakla beraber, von Neumann mimarisi dışında bir mimariye sahip ve işlevsel dillerde yazılmış programları verimli biçimde koşabilecek bir bilgisayar tasarlanıp kullanılmadan önce, bu dillerin buyurgan dillerin yerine geçmesi beklenmemektedir Programming design methodologies (Programlama tasarım yöntemleri) 60 s, 70 s intense analysis on software development and programming language design 60 lar, 70 ler yazılım geliştirme ve programlama dili tasarımında yoğun çözümlemeler Hardware costs decreased, programmer costs increased. Donanım maliyeti azalırken programcı maliyeti arttı. Programs were being written for more complicated tasks. Daha karmaşık görevler için programlar yazılmaya başladı. Top-down design and stepwise refinement Yukarıdan-aşağı tasarım ve adım-adım iyileştirme Discovered deficiencies of languages (Dillerin keşfedilen eksiklikleri) o Incomplete type checking (Eksik tip kontrolü) o Inadequacy of control statements (Kontrol komutlarının uygunsuzluğu) Late 70 s shift from procedure-oriented to data-oriented programming design 70 lerin sonu yordam (altprogram) yönelimli program tasarımından veri-yönelimliye geçiş o Emphasis on data design and abstract data types

12 12 Veri ve soyut veri tipleri tasarımı üzerine vurgu o SIMULA67 limited support of data abstraction (sınırlı veri soyutlama desteği) Early 80 s (80 lerin başı) Object-oriented design (Nesne-yönelimli tasarım) o Data abstraction (Veri soyutlaması) Encapsulating processing with data objects (İşlemeyi veri nesneleriyle beraber sarmalama) o Controlling access to data (Veriye erişimi kontrol etme) o Inheritance (kalıtım) o Dynamic = run time method binding ( Dinamik = çalışma zamanı yöntem bağlaması) More flexible use of inheritance (Kalıtımın daha esnek kullanımı) o Smalltalk (1989) o Support for OOP in imperative languages (buyurgan dillerdeki nesne yönelimli tasarım desteği) Ada 95, Java, C++, C# o Support for OOP in functional languages (işlevsel dillerdeki nesne yönelimli tasarım desteği) CLOS, F# o Support for OOP in logic languages (mantıksal dillerdeki nesne yönelimli tasarım desteği) Prolog LANGUAGE CATEGORIES (DİL SINIFLARI) Imperative (Buyurgan) Functional (İşlevsel) Logic (Mantıksal) Object-oriented (Nesne yönelimli) Visual language (a subcategory of imperative languages) Görsel dil (Buyurgan dillerin alt kategorisi) o Ex:.NET languages (.NET dilleri) Scripting language (betik dil)

13 13 o Ex: Perl, Javascript, Ruby Rule-based language (kural-tabanlı dil) o Order of execution of rules is not important. Kuralların koşma sırası önemli değil. o Ex: Prolog Markup/programming hybrid languages (İşaretleme/programlama karma dilleri) o Ex: HTML, XML, Java Server Pages Standard Tag Library (JSTL), extensible Stylesheets Language Transformations (XSLT) 1.6. LANGUAGE DESIGN TRADE-OFFS (DİL TASARIMINDA ÖDÜNLEŞİM (KAR-ZARAR)) There are so many important but conflicting criteria, that their reconciliation and satisfaction is a major engineering task. (Hoare, 1973) O kadar çok önemli ama çelişen ölçüt var ki bunların uzlaşması ve tümünü sağlamak büyük bir mühendislik problemi. Reliability X Cost of execution (Güvenilirlik X Çalışma maliyeti) Ex: APL Readability X Writability (Okunabilirlik X Yazılabilirlik) o Many array operators so short codes can be written for many tasks. Çok dizi işleci olduğundan birçok iş için kısa kod yazılabilir. o Understanding the short code is poor for the inexperienced. Tecrübesi olmayan için kısa kodu ve ne yapıldığını anlamak zor IMPLEMENTATION METHODS (GERÇEKLEME YÖNTEMLERİ) Instructions = macroinstructions (a set of microinstructions) Komutlar = makrokomutlar (mikrokomutlar kümesi) Machine language of a computer = set of instructions that the computer understands Bilgisayarın makine dili = Bilgisayarın anladığı komutlar kümesi In theory, it is possible to design and build a computer with a high-level language as its machine language but it would be inefficient and expensive. Teoride, bir bilgisayarı yüksey-düzey bir programlama dilini makine dili olarak tasarlayıp yapmak mümkün olsa da bu süreç çok verimsiz ve pahalıdır. Furthermore, such a design and build would be highly inflexible because using it with other highlevel languages would be very difficult.

14 14 Ayrıca, böyle bir tasarım ve yapım, yapılan dili diğer yüksek-düzey dillerle kullanmak çok zor olacağından, esneklikten çok yoksun olurdu. A more practical design implements machine language at a lower level which consists of primitive operations that are commonly needed, and provide an interface to high-level languages via systems software. Daha pratik bir tasarım, daha düşük bir düzeyde, sık kullanılan basit işlemlerden oluşan makine dilini gerçeklemek ve yüksek-düzey dillere sistem yazılımı aracılığıyla bir arayüz sağlamak olabilir. A language implementation system is not sufficient. Bir dil gerçekleme sistemi yetmez. We also need a larger collection of programs called the operating system (OS). İşletim sistemi (OS) denilen daha büyük bir programlar grubuna da ihtiyaç duyulur. Higher level primitives are supplied by the OS. Daha üst düzey basit işlemleri, işletim sistemi (OS) sunar. OS primitives provide the following (İşletim sistemi basit işlemleri aşağıdakileri sağlar): o System resource management (sistem kaynakları yönetimi) o Input and output operations (girdi ve çıktı işlemleri) o A file management system (bir dosya yönetim sistemi) o Text and/or program editors (metin ve/veya program düzenleyicileri) o Various other commonly used functions (Diğer yaygın kullanılan işlevler) Language implementation systems require many OS facilities and interface with the OS rather than the processor (CPU). Dil gerçekleme sistemleri çok sayıda işletim sistemi imkanından yararlandığı için, işlemci (CPU) ile doğrudan değil, işletim sistemi arayüzüyle haberleşirler.

15 15 Virtual computers of languages (Dillerin sanal bilgisayarları) Compilation (Derleme) Compiler implementation (Derleyici gerçeklemesi) Programs are translated to machine language and directly executed. Programlar makine diline çevrilir ve doğrudan koşulur. Fast program execution once translation is complete (Ex: C, COBOL, C++, Ada) Çevrim tamamlandığında hızlı program çalışması

16 Source language (Kaynak dili) the language that a compiler translates (derleyicinin çevirdiği dil) 16 Source program = kaynak programı Optimization = Eniyileme Lexical analyzer = sözlüksel çözümleme Parse tree = Ayrıştırma ağacı Syntax analyzer = sözdizim çözümlemesi Symbol table = sembol tablosu Intermediate code generator and semantic analyzer = Ara kod üreteci ve anlam çözümleyici

17 17 Lexical units (Sözlüksel birimler) o Identifiers (kimlik tanıtıcı, tanımlayıcı) o Special words (özel sözcükler) o Operators (işleçler) o Punctuation symbols (noktalama sembolleri) o Comment lines are ignored (Yorum satırları gözardı edilir). Parse trees (ayrıştırma ağaçları) hierarchical structures (hiyerarşik yapılar) Intermediate code generator (ara kod üreteci) such as assembly language (çevirici dili gibi) Semantic analyzer (anlam çözümleyici) o Checks errors like type errors (tip hataları gibi hataları kontrol eder) o These errors are hard to detect during syntax analysis. Bu hatalar sözdizim çözümlemede bulunması zor hatalardır. Symbol table (sembol tablosu) o Database for compilation (Derleme için veri tabanı) o Type and attribute information of each user-defined name Kullanıcının tanımladığı her ada ait tip ve özellik bilgisi o Placed by syntax and lexical analyzers Sözdizim ve sözlüksel çözümleyiciler tarafından oluşurulur o Used by semantic analyzer and code generator Anlam çözümleyici ve kod üreteci tarafından kullanılır Most user programs require programs from the OS. Çoğu kullanıcı programı OS programlarına ihtiyaç duyar. o Compiler builds calls to required system programs (ex: for input and output) Derleyici gereken sistem programlarına çağrılar oluşturur (ör: girdi ve çıktı) o Linking connecting the user program to the system programs by placing the addresses of the entry points of the system programs in the calls to them in the user program. Bağlama Kullanıcı programı tarafından çağrılan sistem programlarının giriş adreslerine yer verilerek kullanıcı programıyla sistem programlarının bağlanması

18 18 o User and system code together = load module or executable image Kullanıcı ve sistem kodu birarada = yükleme modülü (program birimi) ya da koşulabilir imge (kopya) o Linking and loading (sometimes just linking) collecting system programs and linking them to user programs Bağlama ve yükleme (bazen sadece bağlama) sistem programlarını toplayıp kullanıcı programlarına bağlama o Linker (bağlayıcı) Sistem program for linking (Bağlamayı yapan sistem programı) o Linker may link user programs to other user programs. Bağlayıcı, kullanıcı programlarını diğer kullanıcı programlarına da bağlayabilir. von Neumann bottleneck (von Neumann darboğazı) o Connection between the processor and memory İşlemci ile bellek arasındaki bağlantı o Determines the speed of computer Bilgisayarın hızını belirler o Execution at CPU is fast (İşlemcide koşma hızlıdır) o Transmission between CPU and memory is slower İşlemci ile bellek arası iletim daha yavaştır Pure interpretation (Sadece çevirme = anlamlandırma = yorumlama) Pure interpretation lies at the opposite end (from compilation) of implementation methods. Saf anlamlandırma gerçekleme yöntemleri içinde (derlemeden) karşı uçta (tam tersinde) yer alır. Programs interpreted with another program (interpreter) with no translation Çevrim olmadan, programlar başka bir program (anlamlandırıcı) tarafından anlamlandırılır. Interpreter software simulation of a machine whose fetch-execute cycle deals with high-level language statements rather than machine instructions Anlamlandırıcı Al-koş döngüsü makine komutlarıyla değil ama yüksek-düzey dil komutlarıyla ilgilenen bir makinenin yazılım benzetimi This software simulation Virtual machine for the language Bu yazılım benzetimi Dil için sanal makine

19 19 Pure interpretation allows easy implementation of many source-level debugging operations, because all run-time error messages can refer to source-level units. Saf anlamlandırma birçok kaynak-düzeyi hata ayıklama işleminin kolay gerçeklemesine olanak sağlar, çünkü tüm çalışma-zamanı hata mesajları kaynak birimlerine (satırlar gibi) işaret edebilir. Execution is 10 to 100 times slower than compiled systems. Çalışma, derlenen sistemlere göre kat daha yavaştır. o Decoding of high-level language statements is more complex. Yüksek-düzey dil komutlarının şifre çözümü daha karmaşıktır. o Decoding must be done each time the same statement is executed. Aynı komut her çalıştırıldığında yeniden şifre çözülmelidir. o Statement decoding is the bottleneck (Komut şifre çözülmesi darboğazdır). More space (memory) is needed (Daha fazla yer (bellek) gerekir). o Symbol table present during interpretation (Anlamlandırmada sembol tablosu var olmalı) o Source program may be stored in a form for easy access and modification Kaynak program kolay erişim ve değiştirmeyi sağlayacak biçimde tutulabilir. 60 s (60 lar) APL, SNOBOL, LISP 80 s (80 ler) rarely used in high-level languages (yüksek düzey dillerde nadiren kullanıldı) Recently, a significant comeback in Web scripting languages Yakın zamanlarda, Web betik dillerinde dikkate değer bir geridönüş o Ex: JavaScript, PHP

20 1.7.3 Hybrid implementation systems (Karma gerçekleme sistemleri) 20 Compromise between compilers and pure interpreters Derleyiciler ve saf anlamlandırıcılar arasında karma model Translating high-level languages to an intermediate language to allow easy interpretation Yüksek-düzey dilleri, kolay anlamlandırma için ara bir dile çevirmek Faster than pure interpretation because decoding of source language statements is done once. Kaynak dili komutları yalnız bir kere çözüldüğü için, saf anlamlandırıcılardan daha hızlı. Hybrid system examples (Karma sistem örnekleri) o Perl compiled to detect errors before interpretation for simplification basitleştirme için, anlamlandırmadan önce hataları bulmak için derleme o Initial implementations of Java (Java nın ilk gerçeklemeleri) Intermediate form (ara biçim) byte code Portability to machines having a byte code interpreter and a run-time system Byte code anlamlandırıcı ve ilişkili koşma-zamanı sistemli makinelere taşınabilir. Java Virtual Machine (Java sanal makinesi)

21 21 Systems translating Java byte code to machine code for faster execution Daha hızlı çalışma için Java byte code u makine koduna çeviren sistemler o Just-In-Time implementation systems (Tam-zamanında gerçekleme sistemleri) Initially translate programs to an intermediate language En başta programlar ara bir dile çevrilir. During execution, intermediate code is compiled into machine code when called Çalışma sırasında, ara kod makine koduna derlenir. Machine code version is kept for subsequent calls. Makine kodu sürümü sonraki çağrılar için tutulur. Ex: Java programs and.net languages (Java programları ve.net dilleri) Sometimes, both compiled and interpreted implementations are provided. Bazen, hem derlenen hem de anlamlandırılmış gerçeklemeler vardır. o Interpreter is used to develop and debug programs. Anlamlandırıcı program geliştirme ve hata ayıklamada kullanılır. o Then, relatively bug-free programs are compiled to machine code for fast execution. Sonra, görece hatasız programlar hızlı çalışma için makine koduna derlenir Preprocessors (Önişlemciler) Preprocessor a program that processes a source program immediately before it is compiled Önişlemci bir kaynak programını derlemeden hemen önce işleyen program Macro expander (makro genişletici) Preprocessor instructions commonly used to specify that the code of another file is to be included. Ön işlemci komutları yaygın olarak başka bir dosyadan alınan kodu içermek için kullanılır. Example (örnek)

22 1.8. PROGRAMMING ENVIRONMENTS (PROGRAMLAMA ORTAMLARI) 22 Collection of tools used in software development Yazılım geliştirmek için kullanılan araçlar topluluğu o File system (dosya sistemi) o Text editor (metin düzenleyici) o Linker (bağlama programı) o Compiler (derleyici) OR (veya) o A large collection of integrated tools accessed through a uniform interface Tek biçimli bir arayüz aracılığıyla erişilen büyük bir bütünleşik araçlar topluluğu Program development is highly enhanced. Program geliştirme iyileştirilmiştir. EXAMPLES (ÖRNEKLER) o UNIX GUIs (Solaris Common Desktop Environment (CDE), GNOME, KDE) o Borland Jbuilder o Visual Studio.NET Large and elaborate collection of software development tools Büyük ve kapsamlı yazılım geliştirme araçları topluluğu C#, Visual BASIC.NET, Jscript, F#, C++/CLI (command-line interface) o Netbeans Java, Javascript, Ruby, PHP o Visual Studio, Netbeans also frameworks (aynı zamanda çatılardır) They also provide common parts of the code of application. Uygulama kodunun yaygın parçalarını da temin ederler.

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN Bilgisayar Mühendisliğine Giriş Yrd.Doç.Dr.Hacer KARACAN PROGRAMLAMA DİLLERİ Programlama Dilleri ni neden öğrenmeliyiz? Programlama alanları Dil değerlendirme kriterleri Dil tasarımı üstündeki etkiler

Detaylı

Bölüm 1. Ön Hazırlıklar ISBN 0-321-49362-1

Bölüm 1. Ön Hazırlıklar ISBN 0-321-49362-1 Bölüm 1 Ön Hazırlıklar ISBN 0-321-49362-1 Bölüm 1 Konular Programlama Dilleri Kavramlarının Çalışılma Nedenleri Programlama Alanları Dil Değelendirme Kriterleri Dil Tasarımındaki Etkileri Dil Kategorileri

Detaylı

Bölüm1. İlk Bilgiler ISBN 0-321-49362-1

Bölüm1. İlk Bilgiler ISBN 0-321-49362-1 Bölüm1 İlk Bilgiler ISBN 0-321-49362-1 Bölüm 1 Konuları Niye Programlama Dilleri prensiplerini öğreniyoruz? Programlama alanları Dil değerlendirme kriterleri Dit tasarımına etkiler Dil kategorileri Dil

Detaylı

Unlike analytical solutions, numerical methods have an error range. In addition to this

Unlike analytical solutions, numerical methods have an error range. In addition to this ERROR Unlike analytical solutions, numerical methods have an error range. In addition to this input data may have errors. There are 5 basis source of error: The Source of Error 1. Measuring Errors Data

Detaylı

C++ Programming: Program Design Including Data Structures, Third Edition. Bölüm 1: Bilgisayarlar ve Programlama Dillerine Kısa Bakış

C++ Programming: Program Design Including Data Structures, Third Edition. Bölüm 1: Bilgisayarlar ve Programlama Dillerine Kısa Bakış C++ Programming: Program Design Including Data Structures, Third Edition Bölüm 1: Bilgisayarlar ve Programlama Dillerine Kısa Bakış Bölüm 1 : Amaçlar Farklı tipteki bilgisayarların öğrenilmesi Bir bilgisayar

Detaylı

5. PROGRAMLA DİLLERİ. 5.1 Giriş

5. PROGRAMLA DİLLERİ. 5.1 Giriş 5. PROGRAMLA DİLLERİ 8.1 Giriş 8.2 Yazılım Geliştirme Süreci 8.3 Yazılım Geliştirme Sürecinde Programlama Dilinin Önemi 8.4 Programlama Dillerinin Tarihçesi 8.5 Programlama Dillerinin Sınıflandırılması

Detaylı

PROGRAMLAMA DİLLERİ. Programlama Dilleri Programlama Dillerinin Önemi Dilleri Sınıflandırılması Anlambilim BNF Notasyonu Kontrol Deyimleri

PROGRAMLAMA DİLLERİ. Programlama Dilleri Programlama Dillerinin Önemi Dilleri Sınıflandırılması Anlambilim BNF Notasyonu Kontrol Deyimleri PROGRAMLAMA DİLLERİ Program Yazılım Geliştirme Süreci Programlama Dilleri Tarihçesi Kod Sözdizimi Nesneye Yönelik Programlama Tür Kontrolü Alt Programlar Programlama Dilleri Programlama Dillerinin Önemi

Detaylı

Konular. Hafta 1 BLG339 PROGRAMLAMA DİLİ KAVRAMLARI

Konular. Hafta 1 BLG339 PROGRAMLAMA DİLİ KAVRAMLARI BLG339 PROGRAMLAMA DİLİ KAVRAMLARI Hafta 1 Yrd. Doç. Dr. Melike Şah Direkoğlu Alındığı kaynak: Addison-Wesley s Programming Language Concepts slaytları ve Prof. Dr. Tuğrul Yılmaz ın ders notlarından faydalanarak

Detaylı

İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır.

İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır. İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır. Programların ve donanımların kullanılması için bir çalıştırılması platformu oluşturur. Sistemin yazılım

Detaylı

Bilgisayar Programlama Dilleri

Bilgisayar Programlama Dilleri Bilgisayar Programlama Dilleri Ömer YÜCEL 13253072 1/32 Sunum İçeriği 1. Program ve Programlama Dili Nedir? 2. Programlama Dillerinin Tarihçesi 3. Programlama Dillerinin Sınıflandırılması 4. Programlama

Detaylı

INTRODUCTION TO JAVASCRIPT JAVASCRIPT JavaScript is used in millions of Web pages to improve the design, validate forms, detect browsers, create cookies, and much more. JavaScript is the most popular scripting

Detaylı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

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ı

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü BİL 203 Veri Yapıları ve Algoritmalar I

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü BİL 203 Veri Yapıları ve Algoritmalar I Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü BİL 203 Veri Yapıları ve Algoritmalar I GENEL DERS BİLGİLERİ Öğretim Elemanı : İzzet TAMER Ofis : MUH 311 Ofis Saatleri : Pazartesi: 14:10 15:00, Salı:

Detaylı

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ - EĞİTİM ÖĞRETİM YILI DERS KATALOĞU Ders Kodu Bim Kodu Ders Adı Türkçe Ders Adı İngilizce Dersin Dönemi T Snf Açıl.Dönem P

Detaylı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi 2. BÖLÜM 2 PROGRAMLAMAYA GİRİŞ Programlama Terimleri ve Programlama Ortamı 3 Program Programlama IDE

Detaylı

Yüz Tanımaya Dayalı Uygulamalar. (Özet)

Yüz Tanımaya Dayalı Uygulamalar. (Özet) 4 Yüz Tanımaya Dayalı Uygulamalar (Özet) Günümüzde, teknolojinin gelişmesi ile yüz tanımaya dayalı bir çok yöntem artık uygulama alanı bulabilmekte ve gittikçe de önem kazanmaktadır. Bir çok farklı uygulama

Detaylı

BİL1001 Bilgisayar Bilimlerine Giriş 1

BİL1001 Bilgisayar Bilimlerine Giriş 1 DEÜ Bilgisayar Bilimleri Bölümü BİL1001 Bilgisayar Bilimlerine Giriş 1 Öğr. Gör. Dr. Alper VAHAPLAR 2017 Yaz Okulu Bilgisayar Bilimlerine Giriş 1 Programlama Dillerine (Programming Languages) Giriş Dil

Detaylı

BLM 4811 MESLEKİ TERMİNOLOJİ II Salı , D-109 Dr. Göksel Biricik

BLM 4811 MESLEKİ TERMİNOLOJİ II Salı , D-109 Dr. Göksel Biricik BLM 4811 MESLEKİ TERMİNOLOJİ II 2017-1 Salı 13.00 14.50, D-109 Dr. Göksel Biricik goksel@ce.yildiz.edu.tr Ders Planı Hafta Tarih Konu 1 19.09 Tanışma, Ders Planı, Kriterler, Giriş 2 26.09 Bilgisayarın

Detaylı

WEEK 11 CME323 NUMERIC ANALYSIS. Lect. Yasin ORTAKCI.

WEEK 11 CME323 NUMERIC ANALYSIS. Lect. Yasin ORTAKCI. WEEK 11 CME323 NUMERIC ANALYSIS Lect. Yasin ORTAKCI yasinortakci@karabuk.edu.tr 2 INTERPOLATION Introduction A census of the population of the United States is taken every 10 years. The following table

Detaylı

BİLGİSAYAR ORGANİZASYONU

BİLGİSAYAR ORGANİZASYONU BİLGİSAYAR ORGANİZASYONU Donanım Bilgisayarın fiziksel bölümü Monitor, klavye, fare Entegreler, kartlar Kablolar Yazılım: Bilgisayarın mantıksal bölümü Programlar: Bilgisayarın gerçekleştireceği komutlar

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 1: Giriş İçerik Bilgisayar Sistemleri Donanım Yazılım Programlama Program Geliştirme Nesne-tabanlı Programlama C++ Programlama Dili 2 Bilgisayar Sistemleri Kısaca,

Detaylı

Ders - 1. BİL 221 Bilgisayar Yapısı GİRİŞ. Ders Hakkında. Ders İzlencesi

Ders - 1. BİL 221 Bilgisayar Yapısı GİRİŞ. Ders Hakkında. Ders İzlencesi Ders - 1 BİL 221 Bilgisayar Yapısı GİRİŞ Ders Hakkında Ders İzlencesi Bilgisayar Sınıfları Kişisel Bilgisayarlar$ Genel amaçlı, çok çeşitli yazılımlar$ Performans - maliyet ödünleşmesi hedeflenir$ Sunucular$

Detaylı

First Stage of an Automated Content-Based Citation Analysis Study: Detection of Citation Sentences

First Stage of an Automated Content-Based Citation Analysis Study: Detection of Citation Sentences First Stage of an Automated Content-Based Citation Analysis Study: Detection of Citation Sentences Zehra Taşkın, Umut Al & Umut Sezen {ztaskin, umutal, u.sezen}@hacettepe.edu.tr - 1 Plan Need for content-based

Detaylı

4. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

4. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI. 4. HAFTA BLM33 SAYISAL ANALİZ Okt. Yasin ORTAKCI yasinortakci@karabuk.edu.tr Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi BLM33 NONLINEAR EQUATION SYSTEM Two or more degree polinomial

Detaylı

Bölüm 6. Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler

Bölüm 6. Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler Bölüm 6 Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler Chapter 6 Java: an Introduction to Computer Science & Programming - Walter Savitch 1 Genel Bakış Dizi: Hepsi aynı türde

Detaylı

MÜFREDAT DERS LİSTESİ

MÜFREDAT DERS LİSTESİ MÜFREDAT DERS LİSTESİ MÜHENDİSLİK FAK. / BİLGİSAYAR MÜHENDİSL / 2010 BİLGİSAYAR MÜHENDİSLİĞİ Müfredatı 0504101 Matematik I Calculus I 1 GÜZ 4 5 Z 0504102 Genel Fizik I General Physics I 1 GÜZ 4 4 Z 0504103

Detaylı

Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir.

Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir. PROGRAMLAMAYA GİRİŞ Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir. C de yazılan bir programın çalışması için çoğunlukla aşağıdaki

Detaylı

WEEK 4 BLM323 NUMERIC ANALYSIS. Okt. Yasin ORTAKCI.

WEEK 4 BLM323 NUMERIC ANALYSIS. Okt. Yasin ORTAKCI. WEEK 4 BLM33 NUMERIC ANALYSIS Okt. Yasin ORTAKCI yasinortakci@karabuk.edu.tr Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi BLM33 NONLINEAR EQUATION SYSTEM Two or more degree polinomial

Detaylı

Windows Programlama Güz Dönemi

Windows Programlama Güz Dönemi Windows Programlama 2016-2017 Güz Dönemi C#, yeni bir programlama dili olup, iki açıdan önemlidir: Microsoft.NET Framework ü kullanabilmek üzere tasarlanıp geliştirilmiştir. Modern object-oriented metodolojileri

Detaylı

CmpE 320 Spring 2008 Project #2 Evaluation Criteria

CmpE 320 Spring 2008 Project #2 Evaluation Criteria CmpE 320 Spring 2008 Project #2 Evaluation Criteria General The project was evaluated in terms of the following criteria: Correctness (55 points) See Correctness Evaluation below. Document (15 points)

Detaylı

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say İÇİNDEKİLER 1. Bilgisayarın Yapısı Ve Programlama Dilleri Giriş 1 Bilgisayar ve Programlamanın Kısa Bir Tarihçesi 2 Donanım ve Yazılım Kavramları 3 Bilgisayarın Donanımsal yapısı 4 Giriş Birimi (Input

Detaylı

Assembly Language Programming

Assembly Language Programming Assembly Language Programming Assembly Programming Machine Language binary hexadecimal machine code or object code Assembly Language mnemonics assembler High-Level Language Pascal, Basic, C compiler 2

Detaylı

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 ( yılı öncesinde birinci

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 ( yılı öncesinde birinci MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 (2016-17 yılı öncesinde birinci sınıfa başlayan öğrenciler için) BİRİNCİ YIL 1. Dönem CMPE113

Detaylı

T.C. İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ BİLİMSEL ARAŞTIRMA PROJELERİ KOORDİNASYON BİRİMİ

T.C. İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ BİLİMSEL ARAŞTIRMA PROJELERİ KOORDİNASYON BİRİMİ T.C. İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ BİLİMSEL ARAŞTIRMA PROJELERİ KOORDİNASYON BİRİMİ PROJE BAŞLIĞI Mühendislik Problemlerinin Bilgisayar Destekli Çözümleri Proje No:2013-2-FMBP-73 Proje Türü ÖNAP SONUÇ

Detaylı

2007-2008 Bahar. BM 211 Programlama Dilleri 3 1

2007-2008 Bahar. BM 211 Programlama Dilleri 3 1 Programlama Dilleri III 2007-2008 Bahar BM 211 Programlama Dilleri 3 1 Ders Hakkında Ders Sorumlusu Öğr.Gör. Bora UĞURLU Ders Slaytları İçin http://members.comu.edu.tr/boraugurlu/ Dersle İlgili İletişim

Detaylı

Bölüm 5. Adlar(Names), Bağlamalar(Binding s),tip Kontrolleri (Type Checking), ve Etki Alanları ( Scopes) ISBN 0-321-49362-1

Bölüm 5. Adlar(Names), Bağlamalar(Binding s),tip Kontrolleri (Type Checking), ve Etki Alanları ( Scopes) ISBN 0-321-49362-1 Bölüm 5 Adlar(Names), Bağlamalar(Binding s),tip Kontrolleri (Type Checking), ve Etki Alanları ( Scopes) ISBN 0-321-49362-1 Bölüm 5 Konular Giriş Adlar(Names) Değişkenler(Variables) Bağlama Kavramı(The

Detaylı

BM-311 Bilgisayar Mimarisi

BM-311 Bilgisayar Mimarisi 1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Operand türleri Assembly dili 2 İşlemcinin yapacağı iş makine komutlarıyla belirlenir. İşlemcinin

Detaylı

Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ

Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ 1 İkinci Kuşak Bilgisayarlar 1956-1963: Transistor Transistor 1947 yılında keşfedilmiştir. 50 li yılların sonuna kadar bilgisayarlarda yaygın kullanımı görülmez.

Detaylı

BBM Discrete Structures: Final Exam Date: , Time: 15:00-17:00

BBM Discrete Structures: Final Exam Date: , Time: 15:00-17:00 BBM 205 - Discrete Structures: Final Exam Date: 12.1.2017, Time: 15:00-17:00 Ad Soyad / Name: Ögrenci No /Student ID: Question: 1 2 3 4 5 6 7 8 9 10 11 Total Points: 6 16 8 8 10 9 6 8 14 5 10 100 Score:

Detaylı

Sınavında sık yapılan temel hatalar:

Sınavında sık yapılan temel hatalar: Sınavında sık yapılan temel hatalar: 1) İsim tamlamalarında hata yapılabiliyor. Aşağıda bir kaç örnekle doğru ve yanlış kullanımlar gösterilmiştir. Belirtili isim tamlaması: Hem tamlayan (1. isim) hem

Detaylı

DOKUZ EYLUL UNIVERSITY FACULTY OF ENGINEERING OFFICE OF THE DEAN COURSE / MODULE / BLOCK DETAILS ACADEMIC YEAR / SEMESTER

DOKUZ EYLUL UNIVERSITY FACULTY OF ENGINEERING OFFICE OF THE DEAN COURSE / MODULE / BLOCK DETAILS ACADEMIC YEAR / SEMESTER Offered by: Bilgisayar Mühendisliği Course Title: COMPUTER PROGRAMMING Course Org. Title: COMPUTER PROGRAMMING Course Level: Course Code: CME 0 Language of Instruction: İngilizce Form Submitting/Renewal

Detaylı

Java Temel Özellikleri

Java Temel Özellikleri Java Temel Özellikleri Java Programlama Dili Java programlama dili şu anda dünyadaki en popüler programlama dillerinden biri haline gelmiştir. Java SUN bilgisayar şirketince elektrikli ev aletlerinin birbiriyle

Detaylı

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması Sistem Programlama Sistem programlama bilgisayar mühendisliğinin bir alanı olup karmaşık sistemlerin ve bu sistemlerin parçalarının ile ilgilenir. İşletim Sistemlerinin Programlaması Giriş/Cıkış( I/O)

Detaylı

BİLGİSAYAR PROGRAMLAMA (C#) DERS NOTU 1

BİLGİSAYAR PROGRAMLAMA (C#) DERS NOTU 1 BİLGİSAYAR PROGRAMLAMA (C#) DERS NOTU 1 Kaynaklar: Sefer Algan, Her Yönüyle C#, 6. Baskı, Pusula Yayıncılık. www.sharpnedir.com 1. DÜZEYLERİNE GÖRE BİLGİSAYAR DİLLERİ Script Dilleri Yüksek Düzeyli Diller

Detaylı

Islington da Pratisyen Hekimliğinizi ziyaret ettiğinizde bir tercüman istemek. Getting an interpreter when you visit your GP practice in Islington

Islington da Pratisyen Hekimliğinizi ziyaret ettiğinizde bir tercüman istemek. Getting an interpreter when you visit your GP practice in Islington Islington da Pratisyen Hekimliğinizi ziyaret ettiğinizde bir tercüman istemek Getting an interpreter when you visit your GP practice in Islington Islington daki tüm Pratisyen Hekimlikler (GP) tercümanlık

Detaylı

PROGRAMLAMAYA GİRİŞ DERS 2

PROGRAMLAMAYA GİRİŞ DERS 2 PROGRAMLAMAYA GİRİŞ DERS 2 Program editörde oluşturulur ve diske kaydedilir Tipik Bir C Programı Geliştirme Ortamının Temelleri 1. Edit 2. Preprocess 3. Compile 4. Link 5. Load 6. Execute Önişlemci programı

Detaylı

Konforun Üç Bilinmeyenli Denklemi 2016

Konforun Üç Bilinmeyenli Denklemi 2016 Mimari olmadan akustik, akustik olmadan da mimarlık olmaz! Mimari ve akustik el ele gider ve ben genellikle iyi akustik görülmek için orada değildir, mimarinin bir parçası olmalı derim. x: akustik There

Detaylı

C# nedir,.net Framework nedir?

C# nedir,.net Framework nedir? 1 C# nedir,.net Framework nedir? C# nedir? C#, C/C++ ve Java dillerinde türetilmiş,bu dillerin dezavantajlarının elenip iyi yönlerinin alındığı, güçlü basit, esnek, tip-güvenli(typesafe,tür dönüşümlerindeki

Detaylı

Soru Toplam Puan Not

Soru Toplam Puan Not A grubu Pamukkale Üniversitesi Bilgisayar Mühisliği Programlama Dilleri Ara Sınav Cevap Kağıdı 26.04.2016 Öğrenci Numarası : Adı Soyadı : Sınav çoktan seçmeli ve klasik olmak üzere iki kısımdan oluşmaktadır.

Detaylı

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER BİRİNCİ SINIF GÜZ YARIYILI 2015-2016 EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER DEĞİŞİKLİK FORMU COM101 BİLGİSAYAR PROGRAMLAMA

Detaylı

Bölüm 7. İfadeler ve atamalar ISBN

Bölüm 7. İfadeler ve atamalar ISBN Bölüm 7 İfadeler ve atamalar ISBN 0-321-49362-1 7. Bölüm konuları Giriş Aritmetik ifadeler Çok anlamlı (overloaded) operatörler Tip dönüşümleri (conversions) İlişkisel ve Boolean İfadeler Kısa-devre hesaplama

Detaylı

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1 Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte

Detaylı

Argumentative Essay Nasıl Yazılır?

Argumentative Essay Nasıl Yazılır? Argumentative Essay Nasıl Yazılır? Hüseyin Demirtaş Dersimiz: o Argumentative Essay o Format o Thesis o Örnek yazı Military service Outline Many countries have a professional army yet there is compulsory

Detaylı

MESLEKİ TERMİNOLOJİ I 1. HAFTA YAZILIM MÜH. TEMEL KAVRAMLAR

MESLEKİ TERMİNOLOJİ I 1. HAFTA YAZILIM MÜH. TEMEL KAVRAMLAR YAZILIM: SOFTWARE Yazılım (Software): Yazılım sadece bir bilgisayar programı değildir. Basılı veya elektronik ortamdaki her tür dokümanı da içeren ürün. Dokümanlar yazılım mühendislerine ve son kullanıcıya

Detaylı

Dr. Aysın Yeltekin. EST Enerji

Dr. Aysın Yeltekin. EST Enerji Dr. Aysın Yeltekin EUREKA PROJELERİMİZ EUREKA, E!1770 St. Joseph 2000, EUREKA E!2007, Pack 2000 EUREKA E! 2659 ONE ECOPOWER, EUROSTARS EUREKA E!4720 PLUG and PACK St. Joseph 2000, EUREKA project, E!1770,

Detaylı

ENG ACADEMIC YEAR SPRING SEMESTER FRESHMAN PROGRAM EXEMPTION EXAM

ENG ACADEMIC YEAR SPRING SEMESTER FRESHMAN PROGRAM EXEMPTION EXAM ENG111 2016-2017 ACADEMIC YEAR SPRING SEMESTER FRESHMAN PROGRAM EXEMPTION EXAM Exam Type Date / Classes / Time Written Thursday, September 22 nd, 2016 Classes & Time to be announced on September 20th.

Detaylı

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan BİLGİ TEKNOLOJİLERİ YÖNETİMİ EĞİTİM MODÜLLERİ Tarih Saat Modül Adı Öğretim Üyesi 01/05/2018 Salı Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan Bu dersin amacı, bilgisayar bilimlerinin temel kavramlarını

Detaylı

C++ ile Programlamaya Giriş. Gülşen Demiröz

C++ ile Programlamaya Giriş. Gülşen Demiröz C++ ile Programlamaya Giriş Gülşen Demiröz Bu ders şunları vermeyi amaçlıyor Basit bilgisayar bilimleri kavramları Çoğu C++ programlama kavramları Nesneye Dayalı Programlama dili Bu dersin sonunda yapabilecekleriniz

Detaylı

BÖLÜM 1: PROGRAMLAMAYA GİRİŞ

BÖLÜM 1: PROGRAMLAMAYA GİRİŞ BÖLÜM 1: PROGRAMLAMAYA GİRİŞ Bilgisayar, verileri klavye, dosya ve veritabanı gibi değişik ortamlardan girdi olarak alan, istendiğinde bunları saklayan, veriler üzerinde çok hızlı işlem yapan ve sonuçları

Detaylı

Lecture 7. Assembler language nedir? Language in 3 seviyesi. Language 3 seviyesi. Nicin onu ogreniriz?

Lecture 7. Assembler language nedir? Language in 3 seviyesi. Language 3 seviyesi. Nicin onu ogreniriz? Lecture 7 Assembler language nedir? Nicin onu ogreniriz? oku sections 3.1-3.4 oku H&P sections A.1 ve A.9 11/25/2004 Bilgisayar Mimarisi 7.1 11/25/2004 Bilgisayar Mimarisi 7.2 Language 3 seviyesi High

Detaylı

BM-311 Bilgisayar Mimarisi

BM-311 Bilgisayar Mimarisi 1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş Mikro işlemler Fetch cycle Indirect cycle Interrupt cycle Execute cycle Instruction

Detaylı

Gömülü Sistemler. (Embedded Systems)

Gömülü Sistemler. (Embedded Systems) Gömülü Sistemler (Embedded Systems) Tanım Gömülü Sistem (Embedded System): Programlanabilir bilgisayar içeren fakat kendisi genel amaçlı bilgisayar olmayan her türlü cihazdır. Gömülü Sistem (Embedded System):

Detaylı

mikroc Dili ile Mikrodenetleyici Programlama Ders Notları

mikroc Dili ile Mikrodenetleyici Programlama Ders Notları 4. Operatörler İfade içerisindeki değişken ve diğer ifadelere uygulandığında yeni değerlerin elde edilmesini sağlayan ve kendilerine özel sembolik gösterimleri olan sözdizimleridir. mikroc derleyicisi

Detaylı

Bilgisayarda Programlama. Temel Kavramlar

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ı

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini

Detaylı

YAKIN DOĞU ÜNİVERSİTESİ DIŞA AÇIK DERSLER KOORDİNATÖRLÜĞÜ BİLGİSAYAR MÜHENDİSLİĞİ - İNGİLİZCE

YAKIN DOĞU ÜNİVERSİTESİ DIŞA AÇIK DERSLER KOORDİNATÖRLÜĞÜ BİLGİSAYAR MÜHENDİSLİĞİ - İNGİLİZCE YAKIN DOĞU ÜNİVERSİTESİ DIŞA AÇIK DERSLER KOORDİNATÖRLÜĞÜ Okul/Fakülte: Bölüm/Program: MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ - İNGİLİZCE Ders Dili: English Ders Kodu: COM162 DersTürkçe İsmi: PROGRAMLAMA

Detaylı

Program Nedir?(1) Programlamaya Giriş

Program Nedir?(1) Programlamaya Giriş Programlamaya Giriş Arş. Gör. Muhammet BAYKARA Program Nedir?(1) Bir program bilgisayara ne yapması gerektiğini söyleyen bir dizi komuttur. Bilgisayarlar işlemlerin kendi anlayacağı dilde (makine dili)

Detaylı

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ BİLGİSAYAR PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr.Caner KOÇ Ankara Üniversitesi Ziraat Fakültesi Tarım Makinaları ve Teknolojileri Mühendisliği Bölümü ckoc@ankara.edu.tr DERS KAYNAKLARI 1. A. Kadir GÜNEYTEPE:

Detaylı

İşletim Sistemleri (Operating Systems)

İşletim Sistemleri (Operating Systems) İşletim Sistemleri (Operating Systems) 1 İşletim Sistemleri (Operating Systems) Genel bilgiler Ders kitabı: Tanenbaum & Bo, Modern Operating Systems:4th ed., Prentice-Hall, Inc. 2013 Operating System Concepts,

Detaylı

Dersin Türü (Course Type) Zorunlu (Compulsory)[Χ] Seçmeli (Elective) [ ]

Dersin Türü (Course Type) Zorunlu (Compulsory)[Χ] Seçmeli (Elective) [ ] Programın Adı (Program Name) Kodu (Course Code) CS 102 Molecüler Biyoloji ve Genetik (Molecular Biology and Genetics) Adı (Course Name) Türü (Course Type) Zorunlu (Compulsory)[Χ] Seçmeli (Elective) [ ]

Detaylı

GÖRSEL PROGRAMLAMA - I 2013-2014

GÖRSEL PROGRAMLAMA - I 2013-2014 GÖRSEL PROGRAMLAMA - I 2013-2014 Ders Hakkında Ders Sorumlusu Öğr.Gör. Ekrem Eşref KILINÇ Dersle İlgili İletişim İçin ekremesrefkilinc@gmail.com Neler Öğreneceğiz? Nesneye yönelik programla nedir? (Metot

Detaylı

İlk Konsol Uygulamamız 2 İlk Windows Uygulamamız 9.Net Framework Yapısı 18 Neler Öğrendik 19. Veri Tipleri 24 Tanımlı Veri Tipleri 27 Basit Tipler 28

İlk Konsol Uygulamamız 2 İlk Windows Uygulamamız 9.Net Framework Yapısı 18 Neler Öğrendik 19. Veri Tipleri 24 Tanımlı Veri Tipleri 27 Basit Tipler 28 ix 1 İlk Konsol Uygulamamız 2 İlk Windows Uygulamamız 9.Net Framework Yapısı 18 Neler Öğrendik 19 23 Veri Tipleri 24 Tanımlı Veri Tipleri 27 Basit Tipler 28 Kayan Nokta Tipleri 30 Sayısal Veri Tipi Dönüşümleri

Detaylı

ANKARA ÜNİVERSİTESİ A ÖĞRENCİ İŞLERİ DAİRE BAŞKANLIĞI

ANKARA ÜNİVERSİTESİ A ÖĞRENCİ İŞLERİ DAİRE BAŞKANLIĞI PROGRAM ADI : BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) 1.SINIF /1.YARIYIL* 1 COM101 COMPUTER PROGRAMMING I - - 4 2 6 5 9 2 COM113 INTRODUCTION TO COMPUTER SCIENCE - - 3 0 3 3 5 3 PHY0101 PHYSICS I - - 3 0 3

Detaylı

Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks ve semantik bir dilin tanımı sağlar

Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks ve semantik bir dilin tanımı sağlar PDP 3 1 Sentaks (Syntax): ifadelerin (statements), deyimlerin (expressions), ve program birimlerinin biçimi veya yapısı Semantik (Semantics): ifadelerin, deyimlerin, ve program birimlerinin anlamı Sentaks

Detaylı

Eğitim ve Öğretim Araştırmaları Dergisi Journal of Research in Education and Teaching Mayıs 2017 Cilt: 6 Sayı: 2 Makale No: 33 ISSN:

Eğitim ve Öğretim Araştırmaları Dergisi Journal of Research in Education and Teaching Mayıs 2017 Cilt: 6 Sayı: 2 Makale No: 33 ISSN: KISA VE ORTA ENERJİ İLETİM HATLARININ SAYISAL ANALİZİ İÇİN BİR ARAYÜZ TASARIMI Öğr. Gör. Hakan Aydogan Uşak Üniversitesi, Uşak hakan.aydogan@usak.edu.tr Öğr. Gör. Mehmet Feyzi Özsoy Uşak Üniversitesi,

Detaylı

Akılda kalıcı sahneler

Akılda kalıcı sahneler Akılda kalıcı sahneler Autodesk 3ds Max Design 2012 yazılımı yeni render araçlarını sunar, geliştirilmiş iteratif iş akışı ve verimlilik sağlayan geliştirilmiş grafik çekirdeği. Bu sürüm ile, Autodesk

Detaylı

Hem lw hem de sw komutlarının ofseti 16-bitlik işaretli tamsayıdır.

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ı

Bilgisayarın Yapıtaşları

Bilgisayarın Yapıtaşları Bilgisayarın Yapıtaşları Donanım (Hardware) bilgisayarın fiziki yapısını oluşturan şeylerdir. Yazılım (Software) bilgisayarın fiziki yapısını kulanan ve ona hayat veren komutlar bütünüdür. 1 Dosyalar (Files)

Detaylı

Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü. BLGM 318 Ara Sınavı 2012 2013 Đlkbahar Dönemi 13 Nisan 2013. Ad, Soyad Öğrenci No.

Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü. BLGM 318 Ara Sınavı 2012 2013 Đlkbahar Dönemi 13 Nisan 2013. Ad, Soyad Öğrenci No. Doğu Akdeniz Üniversitesi Bilgisayar Mühendisliği Bölümü BLGM 318 Ara Sınavı 2012 2013 Đlkbahar Dönemi 13 Nisan 2013 Ad, Soyad Öğrenci No. : : Öğretim Üyesi: Doç. Dr. Zeki BAYRAM Süre: 100 dakika Talimatlar:

Detaylı

Keyestudio SHT31 Temperature and Humidity Module / SHT31 Sıcaklık ve Nem Modülü

Keyestudio SHT31 Temperature and Humidity Module / SHT31 Sıcaklık ve Nem Modülü Keyestudio SHT31 Temperature and Humidity Module / SHT31 Sıcaklık ve Nem Modülü Overview / Genel Bakış This module mainly uses the SHT31 temperature and humidity sensor, which belongs to the SHT3X series

Detaylı

BM-311 Bilgisayar Mimarisi

BM-311 Bilgisayar Mimarisi 1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş Komut çalıştırma özellikleri Büyük register file kullanımı Compiler tabanlı register

Detaylı

BIM 202 - Bahar 2011. Programlama Dilleri

BIM 202 - Bahar 2011. Programlama Dilleri BIM 202 - Bahar 2011 Programlama Dilleri Prof. Dr. Tuğrul Yılmaz e-posta: tyilmaz@mu.edu.tr Pazartesi 9:00-12:00 Z33 nolu sınıf 13:30-16:15 PCLAB1 Tuğrul Yılmaz - Pamukkale Üniversitesi 1 Akademik Dürüstlük

Detaylı

Bölüm 1. Bilgisayarlar ve C++ Programlama. Doç.Dr. Yıldıray Yalman. Kaynak: Problem Solving with C++, Walter Savitch Slide 1

Bölüm 1. Bilgisayarlar ve C++ Programlama. Doç.Dr. Yıldıray Yalman. Kaynak: Problem Solving with C++, Walter Savitch Slide 1 Bölüm 1 Bilgisayarlar ve C++ Programlama Doç.Dr. Yıldıray Yalman Kaynak: Problem Solving with C++, Walter Savitch Slide 1 Sunu Bölümleri Bilgisayar Sistemleri (1.1) Programlama ve Problem Çözme (1.2) C++

Detaylı

1 PROGRAMLAMAYA GİRİŞ

1 PROGRAMLAMAYA GİRİŞ İÇİNDEKİLER IX İÇİNDEKİLER 1 PROGRAMLAMAYA GİRİŞ 1 Problem Çözme 1 Algoritma 1 Algoritmada Olması Gereken Özellikler 2 Programlama Dilleri 6 Programlama Dillerinin Tarihçesi 6 Fortran (Formula Translator)

Detaylı

Programlama Dilinin Özellikleri

Programlama Dilinin Özellikleri Programlama Dilinin Özellikleri *Kaynak Kodun Taşınabilirliği: Taşınabilirlik (portability), bir sistem için yazılmış kaynak kodunun başka bir sisteme götürüldüğünde hatasız olarak derlenerek, doğru bir

Detaylı

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş İşletim Sistemlerine Giriş Bellek Yönetimi (Memory Management) İşletim Sistemlerine Giriş - Ders09 1 SANAL BELLEK(Virtual Memory) Yıllar önce insanlar kullanılabilir olan belleğe sığmayan programlar ile

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS PROGRAMLAMA DİLLERİ BG-324 3/2 3+0+0 3+0 4 Dersin Dili : TÜRKÇE Dersin Seviyesi

Detaylı

Multiplication/division

Multiplication/division Multiplication/division Oku H&P sections 4.6-4.8 Bir kac integer multiplication algorithm Bir integer division algorithms Floating point math 10/22/2004 Bilgisayar Mimarisi 6.1 10/22/2004 Bilgisayar Mimarisi

Detaylı

C Dersi Bölüm 1. Bilgisayar Donanımı

C Dersi Bölüm 1. Bilgisayar Donanımı C Dersi Bölüm 1 M Bodur 1 Bilgisayar Donanımı Bilgisayarın yapısını ve çalışma prensiplerini bilmemiz Bir bilgisayar programından neler bekleyebileceğimizi anlamamızı sağlar. Bigisayar dört temel birimden

Detaylı

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş İşletim Sistemlerine Giriş İşletim Sistemleri ve Donanım İşletim Sistemlerine Giriş/ Ders01 1 İşletim Sistemi? Yazılım olmadan bir bilgisayar METAL yığınıdır. Yazılım bilgiyi saklayabilir, işleyebilir

Detaylı

MM103 E COMPUTER AIDED ENGINEERING DRAWING I

MM103 E COMPUTER AIDED ENGINEERING DRAWING I MM103 E COMPUTER AIDED ENGINEERING DRAWING I ORTHOGRAPHIC (MULTIVIEW) PROJECTION (EŞLENİK DİK İZDÜŞÜM) Weeks: 3-6 ORTHOGRAPHIC (MULTIVIEW) PROJECTION (EŞLENİK DİK İZDÜŞÜM) Projection: A view of an object

Detaylı

Bölüm 8: Ana Bellek. Operating System Concepts with Java 8 th Edition

Bölüm 8: Ana Bellek. Operating System Concepts with Java 8 th Edition Bölüm 8: Ana Bellek 8.1 Silberschatz, Galvin and Gagne 2009 Bölüm 8: Ana Bellek Arka Plan Bilgisi Yer Değiştirme (Swapping) Bitişik Bellek Yerleşimi (Contiguous Memory Allocation) Sayfalama (Paging) Sayfa

Detaylı

Pre-requisite : EE240

Pre-requisite : EE240 Diploma Programı Bilgisayar Mühendisliği Bölümü Yarıyıl Teorik Uygulama Computer Organization Ders İzlence Formu Laboratuar Kodu: CSE341 Dersin Adı: Computer Organization Toplam Saat AKTS Dersin Anlatıldığı

Detaylı

Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü

Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü 1 BİLGİSAYAR MİMARİSİ Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü http:// http:// Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans: http://creativecommons.org/licenses/by-nc-nd/3.0/

Detaylı

ATILIM UNIVERSITY Department of Computer Engineering

ATILIM UNIVERSITY Department of Computer Engineering ATILIM UNIVERSITY Department of Computer Engineering COMPE 350 Numerical Methods Fall, 2011 Instructor: Fügen Selbes Assistant: İsmail Onur Kaya Homework: 1 Due date: Nov 14, 2011 You are designing a spherical

Detaylı

PROGRAMLAMA TEMELLERİ

PROGRAMLAMA TEMELLERİ PROGRAMLAMA TEMELLERİ 2.HAFTA Yazılım Yazılım, elektronik aygıtların belirli bir işi yapmasını sağlayan programların tümüne verilen isimdir. Bir başka deyişle var olan bir problemi çözmek amacıyla bilgisayar

Detaylı

Object Oriented Programming Ders İzlence Formu

Object Oriented Programming Ders İzlence Formu Diploma Programı Bilgisayar Mühendisliği Bölümü Yarıyıl Teorik Uygulama Object Oriented Programming Ders İzlence Formu Laboratuar Kodu: CSE203 Dersin Adı: Object Oriented Programming Toplam Saat AKTS Dersin

Detaylı

Arýza Giderme. Troubleshooting

Arýza Giderme. Troubleshooting Arýza Giderme Sorun Olasý Nedenler Giriþ Gerilimi düþük hata mesajý Þebeke giriþ gerilimi alt seviyenin altýnda geliyor Þebeke giriþ gerilimi tehlikeli derecede Yüksek geliyor Regülatör kontrol kartý hatasý

Detaylı

2013-14 GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI

2013-14 GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI 2013-14 GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI KOÜ Mekatronik Mühendisliği Bölümü/MKT-103-Görsel Programlama Dersi - Ara Sınav J-grubu Ad-Soyad:...No:... J GRUBU-süre:70dk 1.) Aşağıdaki

Detaylı