Pages

Snow

Snow
Love snow <3

Monday, August 22, 2011

Pemrogramana Terstruktur : C dan C++

PENDAHULUAN


Sebelum kemunculan bahasa C, terdapatlah bahasa B dan bahasa assembly--yang masih termasuk ke dalam bahasa tingkat rendah (low level language). Bahasa B diambil dr BCPL (basic combined programming language). Bisa dikatakan, inilah silsilah keluarga programming
CPL -> BCPL -> B -> C -> C++


(karena kurangnya informasi, saya akui, saya belum bisa menjelaskan apa itu CPL dan BCPL)


Awalnya, sistem operasi UNIX (UNIX adalah DOS yang paling mbahnya segala mbah) menggunakan bahasa assembly ini karena dinilai programmer-friendly. Setelah UNIX berjalan, Ken Thompson, seorang pengembang sistem di laboratorium mengembangkan bahasa B.

Tapi, bahasa B saat itu sifatnya interpret dan lambat. Akhirnya tahun 1971, sistem operasi UNIX ditulis ulang dengan menggunakan bahasa C, bahasa pemrograman yang dikembangkan oleh Dennis Ritchie.

Kemunculan C++ dikarenakan bahasa C dinilai masih tergolong susah untuk membentuk satu objek. Dalam membuat satu objek harus banyak sekali melakukan peng-codingan. Untuk mengatasai masalah ini, pada tahun 1983 muncullah doktor bernama Bjarne Stroustrup yang sama menciptakan bahasa baru yaitu bahasa C++ yang merupakan bahasa hybrid dari bahasa C


C DAN C++


C dan C++ merupakan bahasa yang sangat populer dalam dunia pengembangan perangkat lunak. Kedua bahasa ini digolongkan dalam bahasa tingkat menengah (middle level language)


Sebagai bahan pengetahuan, berikut ini pengelompokkan tingkatan dari bahasa pemrograman


1. Bahasa Tingkat Tinggi 
  • Ada
  • Modula-2
  • Pascal
  • COBOL
  • FORTRAN
  • BASIC
2. Bahasa Tingkat Menengah
  • Java
  • C++
  • C
  • FORTH
3. Bahasa Tingkat Rendah
  • Macro-Assembler
  • Assembler
List diatas, diurutkan dari atas ke bawah berdasarkan bahasa pemrograman yang paling mudah dipahami. Jadi bahasa C lebih sulit dibandingkan C++ dan C++ bahasa yang lebih sulit dibandingkan Java.


Menurut Bjarne Stroustrup, alasan mengapa C diambil sebagai bahasa dasar dari pembentukan bahasa C++ adalah sbb:
  • Dapat dihubungkan dengan bahasa tingkat rendah
  • Berjalan dimanapun dan untuk masalah apapun
  • Berjalan mulus dalam sistem operasi UNIX
KONSEP KOMPILASI DAN EKSEKUSI PROGRAM


1. Preprocessor
 Kode program dimasukkan ke bagian preprosessor, yaitu yang diawali dengan tanda # (pound) dan menghasilkan file yang akan dilewatkan ke  dalam kompiler. Contoh beberapa preprosessor adalah, sbb:
  • #include
  • #define
  • #ifdef
  • dan lain-lain
2. Kompiler C++
Kompiler menerjemahkan kode program yang telah dilewatkan oleh preprosessor ke dalam bahasa assembly

3. Assembler
Assembler menerima output dari kompiler dan akan membuat sebuah kode objek. Jika dalam kode program kita tidak menggunakan fungsi-fungsi yang terdapat pada library lain, maka kode objek ini akan langsung dieksekusi menjadi file EXE.


4. Link Editor

Bagian ini dikerjakan jika kode program yang dibuat menggunakan fungsi-fungsi luar. Link Editor akan mengombinasikan kode objek dan library yang ada untuk menjadikan sebuah file EXE


KERANGKA PROGRAM C++


Tiap program yang ditulis dalam bahasa C/C++ pasti akan memiliki sebuah fungsi utama dengan nama main(). Dalam C++, kode yang dibaca adalah kode-kode yang terdapat pada fungsi utama.






kata kunci void diatas, di dalam bahasa C masih banyak digunakan, namun di program C++ sebaiknya hindari penggunaannya, karena hal itu merupakan redundan. Sedangkan nilai 0 pada statemen return 0 di atas berfungsi untuk mengembalikan nilai ke sistem operasi.


Contoh program yang ditulis dalam bahasa C




Contoh hasil yang akan diberikan dari program di atas adalah sebagai berikut :


Masukkan sebuah bilangan bulat : 10
Bilangan yang telah Anda masukkan adalah 10




-----------------------------------------------------------------------------------------------------


Ya demikian selintas pengetahuan saya mengenai teori C dan C++ ini. Saya akui (again) kalo C++ saya belum mengerti sepenuhnya, sehingga cuman bahasa C yang mulai saya ngerti dikit-dikit.


Thank you utk yang udah baca :) *apalagi komen #ehem


Daftar pustaka :
Raharjo, Budi. 2010. Pemrograman C++. Bandung : Informatika

1 comment: