Upload
freddy-cranford
View
227
Download
5
Embed Size (px)
Citation preview
• What is a computer?– A computer is a device capable of performing
computations and making logical decisions at speeds millions and even billions of times faster than those of human beings.
• Computers process data under the control of sets of instructions called computer programs.
• These programs guide computers through orderly sets of actions that are specified by individuals known as computer programmers.
• Computers– Hardware: keyboard, screen, mouse, disks,
memory, CD-ROM– Software:
• Computer Information System: Hardware, Software, People, Data, Procedures
• Computer Organization– Central processing unit (CPU)
• Arithmetic and logic unit (ALU)
• Control unit (CU)
– Memory unit– Input unit– Output unit
• Secondary storage unit
Computer hardware history
• First generation, 1940s– Vacum tubes: cost, size, energy requirements
• Second generation, 1950s– Transistors– Programming languages were developed
• Third generation, 1960s– Integrated Circuit (IC)
• Future– More computing power, smaller, more reliable, faster, cheaper,
networked– Programmers needed to write new programs– Programmers needed to update older programs
Evolution of Operating Systems
• Single-user batch processing
• Operating systems (software) were developed
• Multi-programming
• Timesharing
• UNIX (C was developed to write it)
Programlama Nedir?
• Programming is the ability to talk to the computer in a language it can understand and using grammar and syntax that it can follow to get it to perform useful tasks for you.
• You write code and the computer interprets your request and does something.
• Doing something is a vital part of programming.• Step-by-step instructions
Programlama Süreci
Programlamanın Erken Tarihçesi
• 1822, Charles Babbage– Difference machine: a single-purpose
machine that could ultimately only carry out one operation
– Analytical engine: This engine would contain the basic components of a modern computer and led to Babbage’s being called the “father of the computer.”
• an inability to clearly document and convey his ideas!
Programlamanın Erken Tarihçesi
• 1854, Charles Boole– Described the symbolic logic system
• 1890, A.B.D. Nüfus sayımı– necessity is the mother of invention– data processing equipment
• 1946, ilk programlama dili “Plankalkül”– By Konrad Zuse, for Z-3 computer– Birth of modern programming
Programlamanın Erken Tarihçesi
• 1945, “bug” kavramının doğuşu– “debugged”– “debugging a computer”– “debugging a computer program”
• 1949, development of “Short Code”– code had to be made into machine-readable
code by hand
Programlama Alanları
• Geleneksel programlama– Ticari/uygulama amaçlı programlama: C/C++,
Java, VB– Öğrenme/Akademik amaçlı programlama
• Web programlaması– Server-side programming: ASP, PHP, SQL– Client-side programming: JavaScript,
VBScript
Programlama Dilleri
• Makine dili
• Assembly dili
• Yüksek düzeyli diller
• The difficulty of a programming language comes down to how far it is removed from natural written language.
Makine dili
• Any computer can understand only its own machine language directly
• This machine language is defined by the computer’s hardware design
• Consists of streams of numbers• Machine dependent• Makine dili örnek kodu
01000110110001001011101100011101
Assembly Dili
• Makine dili yavaş, sıkıcı ve hataya açık• English-like abbreviations to represent the elementary
operations of the computer• These abbreviations formed the basis of assembly
languages• Translator programs called assemblers convert
assembly lanuage programs to machine language• Assembly dili örnek kodu
ADD A, 6MOV A, OUTLOAD BSUB B, A
Yüksek düzeyli diller
• Assembly languages still required many instructions to accomplish even the simplest task
• To speed up the programming process, high-level languages, in which single statements accomplish substantial tasks, were developed.
• Translation programs called compilers convert high-level language programs into machine language.
• Looks almost like everyday English• Yüksek düzeyli dil örnek kodu
Sayı3 = Sayı1 + Sayı2
Yüksek Düzeyli Dillerin Gelişim Süreci
• 1954-1957, Fortran (by IBM), for creating scientific and engineering applications, first commercial high-level programming lang.
• 1959, Cobol, Commercial applications requiring manipulation of large amounts of data
• Late 1960s, Pascal, for academic use
• New offerings build on aspects of their predecessors
• 1967, BCPL, for writing OSs, software, compilers• 1970, B, early versions of UNIX• 1973, C, UNIX, major operating systems• 1975, BASIC• 1980s, C++, object-oriented programming (OOP)• 1995, Java, create dynamic content for Web pages and for consumer
devices• 2000, C#, designed specifically for the .NET platform
“Hello, World!” yazdırmanın 1001 yolu
Neden bir çok programlama dili var?
• each type of computer (hardware) really only understands one language– 001110100011001010110010001101001011011110111010101
110001100100000011000010110111001100100001000000110100101100110001000000111011101100101001000000110100001100000011010010110111000100000011000100110100101101110011000010111001001111001001000000011101110110100101110100011010000010000011011110111010101110010001000001100011011011110110110101110000011101010111010001100101011100100111001100100000111010101110011011010010110111001100111001000001101001011101000010000001100001011
• A program (either an interpreter or a compiler) is required to convert the code from text into a binary language that the computer can decipher.
• Programs needed to create programs– Development Environment: A development
environment is a program that you use to type the code into.
– Compiler: A compiler is a program that changes the code you type into code that the computer can understand.