C. Dennis Ritchie 9 Eylül 1941 - ö. 12 Ekim 2011.

Slides:



Advertisements
Benzer bir sunumlar
Nesneye Yönelik Programlama
Advertisements

Fonksiyonlar - Functions
JAVA TEMELLERİ GİRİŞ JAVA TEMELLERİ GİRİŞ signalsec.com & mialkan.com.
TEMEL C PROGRAMLAMA DERSİ - 1
void medyan(int cevap[]) { int j; siralama(cevap);
C PROGRAMLAMA DİLİNE GİRİŞ
C Programlama Diline Giriş
C PROGRAMLAMA DİLİNE GİRİŞ
Bölüm 4 İşlevlerve Modüler Programlama. 1 / 8 İşlev Tanımı /* İşlev açıklama satırı */ ( ) { }
Bilgisayar Yapısı-Genel
Soru1: kuvvet(taban,us) Şeklinde bir yinelenen fonksiyon yazın
Derleyici Araçları FLEX & BISON
C Programlama Dili ve Gömülü Sistemler için MikroC
Bilgisayar Programlama
C++ Temelleri C++ genel amaçlı, nesne tabanlı, yüksek seviye programlama dilidir.
FONKSİYONLAR.
C’nin Kısa Tarihçesi C AT&T laboratuarlarında 70’li yıllarının başında Dennis Ritchie tarafından tasarlanmıştır. Ritchie o yıllarda B adlı programlama.
Diziler Adres Kavramı Nesnelerin Adresleri sizeof Operatörü
DÖNGÜLER.
Algoritma & Programlama
Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
Fonksiyonlar Fonksiyon Tanımı
Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü ++ Bilişim Enstitüsü C ++ Veri.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Bölüm 2 - C ile Programlamaya Giriş Başlıklar 2.1Giriş.
DÖNGÜLER(Loop) while, for döngüleri Break ve continue işlevleri
Bölüm 6 Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
C++.
Paralel Programlamaya Giriş 2
Paralel Programlamaya Giriş
Bilgisayar, Yazılım ve Algoritma
The if statement. if Şartlı kontrol Koşul değimi doğru (1) yada yanlış (0) değeri üretir. Şartın doğru olması durumunda if satırından sonraki değimler.
BİL542 PARALEL PROGRAMLAMA
Programlama Dilleri Visual Basic C# C++ Pascal Delphi.
Bölüm 2 C Diline Genel Bir Bakış. 1/29 /* Örnek1- toplama.c Klavyeden girilen iki tamsayının toplamını bulup ekrana yazar. Erkan Yasan */ #include.
Algoritmalar ve Programlama I Ders 3: PROGRAMLAMA VE PROGRAMLAMA DİLİ
Bugünkü konular Programlama dilleri ve Syntax Generic C Program yapısı
Veri Yapıları ve Algoritmalar
Algoritmalar ve Programlama I Ders 10: ALTPROGRAM KAVRAMI ve FONKSİYON
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
4. Hafta1 4. HAFTA. 4. Hafta2 Fonksiyonlar  Büyük problemler, küçük parçalara bölünerek kolay çözülür  Yazılımlar benzer modüller içerirler  Hata ayıklama.
DERS 4 MİKROİŞLEMCİ PROGRAMLAMA. Dr. Emin Argun Oral, Atatürk Üniversitesi 2008 Ders 4, Slayt 2İÇERİK Yüksek seviyeli programlama dilleri Düşük sevyeli.
1 Değişken alanları Geçici değişkenler Birleşik ifadeler(bloklar) ve değişkenler Değişken Depolama Süresi ve Alanı –Local ve global değişkenler –Static.
Genel Kavramlar Bölüm - 1. YAZILIM Bilgisayara işlemler yaptırabilmek ve karar verdirtebilmek için yazılan kalıplara denir. Yazılım, genel olarak donanım.
Bölüm 2 C Dilinin Temelleri Genel Kavramlar Yazım ve Noktalama Kuralları C Kütüphaneleri C Dilindeki Sözcükler Değer Sabitleri Veri Tipleri Değişkenler.
TC Windows Editörü DevC++. KURULUM PROGRAMIN KURULACAĞI YER BURADA BELİRLENİYOR.
Örnek Sorular Bilgisayar Programlama BIL 107. Soru 1: Ekran çıktısında 66 yazması için boşlukları doldurunuz ______ i = 'A'; printf(____, i__); CEVAP:
İbrahim Olgaç PROGRAMLAMA DİLLERİ SUNUMU C#
C dili kullanıcıya kendi ihtiyacı olan bir fonksiyonu yazma imkanı vermiştir. Bir sayının faktöriyelini almaya ihtiyaç duyduğumuzu ve aynı zamanda asal.
Programlamaya Giriş-I Bölüm-1. Algoritma Algoritma günlük yaşamımızda yaptığımız işler sırasında sıklıkla kullandığımız bir yöntemdir. Algoritma, bir.
September 26, 2017 BBS 514 Yapısal Programlama (Structured ProgrammIng) Lecture 2: Introduction to C Lecturer: Burcu Can BBS.
Fonksiyonlar.
Bölüm 6 Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
C Programlama Dili Bilgisayar Mühendisliği.
C Programlama Dili Çağdaş Hakan Aladağ.
Bölüm 2 - C ile Programlamaya Giriş
Algoritma ve Programlamaya Giriş
C’de Fonsiyonlar Aslı Ergün.
Bilgisayar Donanım ve Sistem Yazılımı
DİL ÇEVRİMİ Yüksek düzeyli bir dilde yazılmış bir program ancak makine diline çevrilerek bir bilgisayarda çalıştırılabilir.
C Programlama Diline Giriş
Bölüm 2 C Dilinin Temelleri
Fonksiyonlar.
Döngüler ve Shift Register
Bilgisayar Mühendisliğine Giriş
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Bölüm 2 C Dilinin Temelleri
FONKSİYONLAR.
Sunum transkripti:

C

Dennis Ritchie 9 Eylül ö. 12 Ekim 2011

Derleyiciler - Compiler Basitçe bir dilde yazılmış olan kodu (kaynak kodu yada source code) istenilen başka bir kod haline dönüştüren programdır. Genelde üretilen bu kod ortama göre çalıştırılabilir kod (executable code) olarak üretilmektedir. Ancak bir derleyicinin daha doğru tanımı bir dildeki kodu başka dile çeviren program olarak yapılabilir. Örneğin C dilinde yazılan bir programı PASCAL diline çeviren programlara derleyici adı verilebilir. Derleyicinin diğer bir tanımı ise daha üst seviye bir dilden daha alt seviyeli bir dile tercüme olarak kabul edilebilir. Buna göre örneğin C dilinden Assembly veya makine dili gibi daha alt dillere tercüme ile derleyici kavramı daha da sınırlandırılmış olarak kabul edilebilir. Derleyiciler günümüzde daha çok bir dilde yazılmış koddan, işletim sistemi ve donanım bağımlı kodların üretilmesinde kulllanılmaktadırlar. Bu üretim sırasında ya doğrudan işletim sisteminin anlayacağı ve çalıştıracağı kodları üretirler ya da işletim sisteminde bulunan veya yine dil bağımlı olarak çalışan bağlayıcı (linker) programların anlayacağı ara kodları üretirler. bağlayıcı (linker) Derleyiciler bu kod üretmesi sırasında, üretilen kodun en verimli şekilde üretilmesi için kod iyileştirmesi (optimisation) da yapmaktadırlar. Yani hedef dildeki çalışma süresi ve hafıza ihtiyacı en az olan kodu üretmek bir derleyicinin daha başarılı olma kriterlerinden birisidir.hafıza Aynı zamanda kaynak kodda (source code) bulunan hataların yakalanması bu hataların programcıya bildirilmesi de derleyicilerin diğer görevlerinden birisidir.

Akış şeması

Organizasyon

// Documentation Section // This program calculates the area of square shaped rooms // Author: x person // Date: 6/28/2013 // // 1. Pre-processor Directives Section #include // Diamond braces for sys lib: Standard I/O #include "uart.h" // Quotes for user lib: UART lib // 2. Global Declarations section // 3. Subroutines Section // MAIN: Mandatory routine for a C program to be executable int main(void) { UART_Init(); // call subroutine to initialize the uart printf("This program calculates areas of square-shaped rooms\n"); }

Veri Türleri int main(void) { unsigned long side; // room wall meters unsigned long area; // size squared meters UART_Init(); // call subroutine to initialize the uart side = 3; area = side*side; printf("\nArea of the room with side of %ld m is %ld sqr m\n",side,area); }

Aritmetik İşlemler void main(void){ long x,y,z; // Three local variables x=1; y=2; // set the values of x and y z = x+4*y; // arithmetic operation x++; // same as x=x+1; y--; // same as y=y-1; x = y >2; // right shift same as x=y/4; y += 2; // same as y=y+2; }

Function Fonksiyonlar alt programdır. Bir fonksiyon geriye değer gönderebilir veya gönderemez. void türünden bir fonksiyon geriye değer döndürmez. void türünden bir alt program sadece bir işlevi yapar ve belki de bir işe yaramaz veya yarar.

void hi_de( ) { printf(‘‘Hello Sınıf’’); } Fonksiyon void rakamisoyle (int x) { printf(‘‘ Yazdığın rakam %d’dir’’, x ); } void toplabakalim (int x,double y) { long k; k=x+y; } Bir işe yaramadı.

Geriye değer döndüren fonksiyonlar long toplamayap(int x, int y) { sonux=x+y; return sonuc; } void main { long k; k=toplamayap(2,3); }

unsigned long Calc_Area(unsigned long s); int main(void) { unsigned long side; // room wall meters unsigned long area; // size squared meters UART_Init(); // call subroutine to initialize the uart printf("This program calculates areas of square-shaped rooms\n"); side = 3; area = Calc_Area(side); printf("\nArea of the room with side of %ld m is %ld sqr m\n",side,area); side = side+2; area = Calc_Area(side); printf("\nArea of the room with side of %ld m is %ld sqr m\n",side,area); } // Calculates area // Input: side of a room (unsigned long) in meters // Output: area of the room (unsigned long) in square meters unsigned long Calc_Area(unsigned long s) { unsigned long result; result = s*s; return(result); }

// Calculates area // Input: side of a room (unsigned long) in meters // Output: area of the room (unsigned long) in square meters unsigned long Calc_Area(unsigned long s) { unsigned long result; result = s*s; return(result); } int main(void) { unsigned long side; // room wall meters unsigned long area; // size squared meters UART_Init(); // call subroutine to initialize the uart printf("This program calculates areas of square-shaped rooms\n"); side = 3; area = Calc_Area(side); printf("\nArea of the room with side of %ld m is %ld sqr m\n",side,area); side = side+2; area = Calc_Area(side); printf("\nArea of the room with side of %ld m is %ld sqr m\n",side,area); }

Conditional unsigned long error; // Calculates area // Input: side of a room (unsigned long) // Output: area of the room (unsigned long) // Notes:... unsigned long Calc_Area(unsigned long s) { unsigned long result; if(s <= 25){ result = s*s; } else { result = 0; // mistake error = error +1; } return(result); } int main(void) { unsigned long side; // room wall meters unsigned long area; // size squared meters UART_Init(); // call subroutine to initialize the uart printf("This program calculates areas of square-shaped rooms\n"); side = 1; while(side < 50){ area = Calc_Area(side); printf("\nArea of the room with side of %ld m is %ld sqr m\n",side,area); side = side+1; }

Loop for(part1;part2;part3){body;} int main(void) { unsigned long side; // room wall meters unsigned long area; // size squared meters UART_Init(); // call subroutine to initialize the uart printf("This program calculates areas of square-shaped rooms\n"); for(side = 1; side < 50; side = side+1){ area = Calc_Area(side); printf("\nArea of the room with side of %ld m is %ld sqr m\n",side,area); }