pengantar c (minggu ke ii)

Click here to load reader

Upload: borna

Post on 24-Jan-2016

53 views

Category:

Documents


1 download

DESCRIPTION

Pengantar C (Minggu ke II). Lanny Agustine Yuliati. Struktur Sistem Komputer. Sejarah Bahasa C. Pertama kali digunakan bahasa mesin yang hanya mengenal 1 dan 0. Kemudian dibuat statemen-statemen khusus ( mnemonic ) seperti ADD, MOV , JMP . Bahasa ini disebut bahasa assembly . - PowerPoint PPT Presentation

TRANSCRIPT

Slide 1

Lanny AgustineYuliatiPengantar C (Minggu ke II)1Struktur Sistem Komputer

2Sejarah Bahasa CPertama kali digunakan bahasa mesin yang hanya mengenal 1 dan 0.Kemudian dibuat statemen-statemen khusus (mnemonic) seperti ADD, MOV, JMP. Bahasa ini disebut bahasa assembly.Tahun 1969, Lab Bell AT&T menggunakan bahasa assembly untuk membuat Sistem Operasi UNIX.3Sejarah Bahasa CKen Thompson mengembangkan bahasa B (BCPL) untuk merevisi UNIX. Bahasa B masih lambat.Tahun 1971, Dennis Ritchie mengem-bangkan bahasa C untuk merevisi UNIX.Bahasa C menjadi terkenal di industri perangkat lunak, diantaranya digunakan untuk membuat sistem operasi Windows.Tahun 1983, Bjarne Stroustrup menambah fasilitas OOP (Object Oriented Programming) pada C, disebut C++.4Kelebihan C (1)Kode bahasa C portabel dan fleksibel untuk semua jenis komputerHanya menyediakan sedikit kata kunci (32 kata kunci/keywords)Keywords adalah kata-kata yang mempunyai arti khusus pada bahasa pemrograman komputer dan tidak dibolehkan dipakai untuk identifier lain.

5Keywords6

Kelebihan C (2)7Proses Executable lebih cepatTermasuk bahasa tingkat menengahDukungan fungsi pustaka (library) yang banyakBahasa C terstruktur sehingga mudah dipahamiTersedia hampir di semua jenis komputer(mikro, mini, mainframe komputer)C++ merupakan bahasa pemrograman general purpose dan multi paradigma (prosedural, object oriented)Bahasa pemrograman yang sangat populer dan banyak digunakan

Struktur ProgramBahasa C adalah salah satu bahasa pemrograman yang terstrukturBahasa C juga bersifat prosedural, terdiri dari fungsi-fungsiSetiap program C mempunyai satu fungsi atau lebih dengan nama main () (program utama)Program akan dieksekusi dimulai dari pernyataan (statement) pertama pada fungsi main ituHuruf besar dengan huruf kecil diartikan berbeda (case-sensitive)Setiap pernyataan (statement) sederhana diakhiri dengan titik koma (semi-colon (;))

8Struktur Program C9main(){statemen-statemen;}

Fungsi_Fungsi_Lain(){Statemen-statemen;}Fungsi utamaFungsi fungsi lain yang ditulis olehPemrogram komputerKode program (source code)preprosesorkompilerassemblerlink editorFile EXEkode assemblylibrary#include#define#ifdefkompiler: menerjemahkan ke dalam bahasa assemblypreprosesor: library yang digunakankode objekassembler: menerima keluaran dari kompiler C++ dan akan membuat sebuah kode objeklink editor: mengkombinasikan kode objek dan library yang lain, menjadi file EXE.kompilasi & eksekusi program:10Struktur ProgramContoh program untuk menampilkan sebaris teks Selamat menggunakan bahasa C! pada layar:

/* Program pertama dalam bahasa C */#include

/* fungsi main mulai eksekusi program */int main( void ){ printf( Selamat menggunakan bahasa C!\n" );

return 0; /* indikasi program berakhir dengan sukses */

} /* akhir fungsi main */Selamat menggunakan bahasa C! Program Output11Struktur ProgramKomentar diawali dengan /* dan diakhiri dengan */ (seperti terdapat pada baris-1,3,7,dan 8), komentar tidak dipedulikan/diproses oleh compiler. Bermanfaat untuk memudahkan pembacaan dan pemahaman sebuah program.Baris dengan awalan # (seperti pada baris-2) diproses oleh preprocessor C sebelum program dikompilasi. Baris tersebut menunjukkan bahwa preprocessor harus mengikutsertakan standard input/output header (stdio.h) pada program.Header ini mengandung informasi yang digunakan compiler untuk mengkompilasi pemanggilan fungsi standar input/output seperti printf (baris-6).int main() merupakan fungsi utama program dan selalu merupakan bagian dari program dalam C, karena berjalannya program/instruksi ditentukan oleh fungsi ini. int berarti fungsi main mengembalikan nilai integerTanda kurung kurawal buka { dan tutup } merupakan penanda body dari sebuah fungsi atau sering disebut juga block fungsi/program.printf( Selamat menggunakan bahasa C!\n" ); menghasilkan aksi yaitu menampilkan teks Selamat menggunakan bahasa C!return 0; selalu diikutsertakan pada akhir fungsi main. Keyword return untuk menyatakan keluar dari suatu fungsi, dan angka 0 menunjukkan nilai yang dihasilkan/dikembalikan oleh fungsi tersebut.

12Perintah printf dan scanf menghasilkan value 1, namun jarang digunakan.Sehingga untuk program jenis tsb. Main dapat dideklarasikan sebagai void, yang artinya tidak ada return value yang dieksekusi. Return value dibutuhkan saat membuat fungsi2 sehingga nilai yang dihasilkan pada fungsi tersebut dapat digunakan di main program.

12/* Program pertama dalam bahasa C */#include

/* fungsi main mulai eksekusi program */int main( void ){ printf( Selamat menggunakan bahasa C!\n" );

return 0; /* indikasi program berakhir dengan sukses */

} /* akhir fungsi main */Struktur Programkomentarpreprocessormain functionstatementfunction body13Sering dijumpai beberapa format penulisan fungsi main seperti contoh diatas, tetapi tidak semua compiler mengenalnya.Contoh: dengan menggunakan compiler Turbo C 2.0 (DOS) dan Microsoft Visual C++ (Windows), (2), (3) dan (4) => Success, tetapi (1) warningdengan menggunakan compiler Dev-C (windows), dan gcc (linux) (1), (3) dan (4) => Success, tetapi (2) warning

return (0); menyatakan program exit secara normal.Penulisan return 0; sama artinya dengan return (0);

14Struktur programElemen-elemen dlm source code [1]Characters (karakter): dalam kode ASCII (American Standards Committee for Information Interchange)Identifiers (nama):Nama berbagai elemen program seperti nama variabel, fungsi, konstanta, dsb

Keywords (kata kunci): kata-kata yang mempunyai arti khusus pada bahasa pemrograman komputer dan tidak dibolehkan dipakai untuk identifier lainData types (tipe data)15Elemen-elemen dlm source code [2]Variables (variabel): sesuatu yang memiliki alamat memori tertentu (di RAM) untuk menyimpan nilai dataConstants: nilai yang tidak berubah selama proses dalam programComments or non-extecutable statements (Komentar)

Functions (Fungsi)Pre-processor commands/directives (Perintah/pengarah pre-processor)1617Tambahan: karakter escapeKarakterDeskripsi\nPindah kursor ke baris baru\tHorisontal tab, pindah kursor ke posisi tab berikutnya\aMembunyikan bel sistem (bunyi beep)\ \ \\Menampilkan tanda: quotation (), aposthrope (), backslash (\)Referensi PustakaProgramming in C, with numerical methods for engineers, Kamal B. RojianiDasar pemrograman komputer, Pengantar bahasa C, Sutrisno dkk, Teknik Informatika UBPengenalan konsep pemrograman (dalam bahasa C), PEDATI - fasilkom UIKonsep Dasar Pemrograman Bahasa C, Jogiyanto Hartono18Paradigma PemrogramanPemrograman ProseduralPemrograman FungsionalPemrograman Terstruktur: Program dibagi dalam prosedur dan fungsi, cth: PASCAL & CPemrograman ModularPemrograman Berorientasi Objek: obyek memiliki data/variabel/porperti dan metode/prosedur yang dapat dimanipulasi, cth: C++, Object Pascal, JavaPemrograman Berorientasi Fungsi: fokus pada fungsi tertentu, cth: SQL, HTML, XMLPemrograman Deklaratif19Sejarah Bahasa C: cth low level languageMC68000 assembly languageMOVE.L #4,D2LOOP: MOVE.L D2,D0 ADDI.W #6,D0JSR DECOUTDBRA D2,LOOP MC68000 executable (machine code)

00100000101111000000000000000100 0010000000000010 00000110010000000000000000000110 0100111010000000 01010001110010101111111111110100 20Sejarah Bahasa C: cth high level languageFortran DO 99, X=5,10,1 PRINT X 99 CONTINUE Pascal for x := 5 to 10 do begin write(x);end; Basic For X = 5 To 10 Step 1 Print X Next X C++for (x=5; x