Wednesday, March 25, 2009

Sekilas Tentang Bahasa C++



Akar dari Bahasa C adalah bahasa BCPL (Basic Combined Programming Language)yang dikembangkan oleh Martin Richards pada tahun 1967. Bahasa ini memberikan ide kepada Ten Thompson yang kemudian mengembangkan bahasa yang disebut dengan B pada tahun 1970. Perkembangan selanjutnya dari bahasa B adalah Bahasa C oleh Dennis Ritchie sekitar tahun 1970-an di Bell Telephone Laboratories Inc. ( sekarang adalah AT&T Bell Laboratories ). Bahasa C pertama kali di gunakan pada Komputer Digital Equipment Corporation PDP-II yang menggunakan sistem operasi UNIX.

C adalah bahasa standar, artinya suatu program di tulis dengan versi bahasa C tertentu akan dapat kompilasi dengan versi bahasa C yang lain dengan sedikit modifikasi. Standar bahasa C yang asli adalah standard dari UNIX. Sistem Operasi, kompiler C dan selruh program aplikasi UNIX yang esensial di tulis dalam bahasa C



Patokan dari Standard UNIX ini diambilkan dari buku yang ditulis oleh Brian Keminghan dan Dennis Ritchie berjudul " The C Programming Language ", diterbikan oleh Prentice Hall tahun 1978. Deskripsi C dari Keminghan dan Ricthie ini kemudian di kenal secara sebagai "K& RC".

Kepopuleran bahasa C membuat versi-versi dari bahasa ini banyak di buat untuk komputer Mikro. Untuk membuat versi-veri tersebut menjadi standard, ANSI ( American National Standard Institute ) membentuk suatu komite ( ANSI committee X3J11 ) pada tahun 1983 yang kemudian menetapkan standard ANSI untuk bahasa C. Standar ANSI ini didasarkan kepada standar UNIX yang di perluas. Standar ANSI menetapkan sebanyak 32 buah kata-kata kunci (keywords) standar. Versi-versi bahasa C yang menyediakan paling tidak 32 kata-kata kunci dengan sintaks yang sesuai dengan yang di tentukan oleh standar, maka dapat di katakan mengikuti standard ANSI.

KELEBIHAN DAN KELEMAHAN C

Beberapa kelebihan dari Bahasa C yaitu :

1. Bahasa C tersedia hampir di semua jenis komputer, baik mikro, mini maupun komputer besar ( Mainframe Computer ).
2. Kode bahasa C bersifat protable. Suatu aplikasi yang di tulis, dengan bahasa C untuk suatu komputer tertentu dapat di gunakan di komputer lain hanya dengan sedikit modifikasi.
3. Berbagai struktur data dan pengendalian proses di sediakan dalam C sehingga memungkinkan untuk membuat program yang terstruktur. Struktur bahasa yang baik, selain mudah di pelajari juga memudahkan dalam pembuatan program, pelacakan kesalahan program dan akan menghasilkan dokumentasi program yang baik.
4. Dibandingkan dengan bahasa mesin atau assembly, C jauh lebih mudah dipahami dan prmrogram tidak perlu mengetahui mesin komputer secara detil. Dengan demikian tidak akan menyita waktu yang terlampau banyak dalam menyelesaikan suatu masalah ke dalam bentuk program. Hal ini dikarenakan C merupakan bahasa yang berorientasi pada permasalahan, bukan berorientasi pada mesin.
5. C memungkinkan memanipulasi data dalam bentuk bit maupun byte. Disamping itu juga memungkinkan untuk memanipulasi alamat dari suatu data atau pointer.

KELEMAHAN BAHASA C

1. Banyak operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai. Kalau tidak di kuasai sudah tentu akan menimbulkan masalah.
2. Para pemrogram C tingkat pemula umumnya belum pernah mengenai pointer dan tidak terbiasa menggunakannya . Padahal keampuhan C justru terletak pada pointer.

Kesulitan yang di uraikan di depan akan bersifat sementara saja. Kalau para pemula C mau mempelajarinya, sebenarnya tak ada yang di katakan sulit sekali mengenai C.

PROSES KOMPILASI DAN LINKING PROGRAM C

Agar suatu program dalam bahasa pemrograman dapat di mengerti oleh komputer, program haruslah diterjemahkan dahulu ke dalam kode mesin. Adapun penerjemah yang digunakan bisa berupa interpreter atau kompiler.

Interpreter adalah suatu jenis penerjemah yang menerjemahkan baris per baris instruksi untuk setiap saat.
Keuntungan pemakaian interpreter, penyusunan program relatif lebih cepat dan bisa langsung diuji sekalipun masih ada beberapa kesalahan secara kaidah dalam program.
Sedangkan Kelemahannya kecepatan menjadi lambat sebab sebelum suatu instruksi dijalankan selalu harus diterjemahkan terlebih dahulu. Selain itu, saat program dieksekusi, interpreter juga harus berada di dalam memori. jadi memori selalu digunakan baik untuk program maupun interpreter. Disamping itu, program sumber ( source program ) yaitu program aslinya tidak dapat dirahasiakan ( orang lain selalu bisa melihatnya )

Kebanyakan versi C yang beredar di pasaran menggunakan penerjemah berupa kompiler. Kompiler merupakan jenis penerjemah yang lain, dengan cara kerjanya yaitu menerjemahkan seluruh instruksi dalam program sekaligus.

Proses pengkompilasian ini cukup dilakukan sekali saja. Selanjutnya hasil penerjemahan ( setelah melalui tahapan yang lain ) bisa di jalankan secara langsung tanpa tergantung lagi oleh program sumber maupun kompilernya.

Keuntungannya, proses eksekusi dapat berjalan dengan cepat, sebab tak ada lagi proses penerjemahan. Di samping itu, program sumber bisa di rahasiakan,sebab yang di eksekusi adalah program yang sudah dalam bentuk kode mesin.

Sedangkan Kelemahannya, proses pembuatan dan pengujian membutuhkan waktu relatif lebih lama sebab ada waktu untuk mengkompilasi ( menerjemahkan ) dan ada pula waktu umelakukan proses linking.

Proses dari bentuk program sumber C ( Source Program, yaitu program yang di tulis dalam bahasa C ) hingga menjadi program yang executable ( dapat di eksekusi secara langsung, seperti yang ditunjukkan pada gambar di bawah ini :


Keterangan gambar :
1. Pertama-tama program C ditulis dengan menggunakan editor. Program ini disimpan dalam file yang disebut file program sumber ( dengan ciri utama memiliki ekstensi.c).
2. File include (umumnya memiliki ekstensi.h, misalnya stdio.h, atau biasa di sebut dengan file judul ( header file )) berisi kode yang akan di libatkan dalam program C ( Pada program tertentu bisa saja tidak melibatkan file include ).
3. Berikut kode dalam file program sumber maupun kode pada file include akan di kompilasi oleh kompiler menjadi kode obyek. Kode Obyek ini di simpan pada file yang biasanya berekstensi.obj atau.o ( bergantung kepada lingkungan/environment sistem operasi yang di pakai ). Kode obyek berbentuk kode mesin, oleh karena itu tidak dapat dibaca oleh pemrogram. Akan tetapi kode ini sendiri juga belum bisa dipahami komputer.
4. Supaya bisa di mengerti oleh komputer, maka kode obyek bersama-sama dengan kode obyek yang lain ( kalau ada ) dan isi file pustaka ( library file, yaitu file yang berisi rutin untuk melaksanakan tugas tertentu. File ini di sediakan oleh pembuat kompiler, biasanya memiliki ekstendi.lib) perlu dikaitkan ( linking ) dengan mengunakan linker, membentuk sebuah program executable ( program yang dapat di jalankan/dieksekusi secara langsung dalam lingkungan sistem operasi).
5. Program hasil linker ini di simpan dalam file yang di sebut dengan file executable, yang biasanya berekstensi.exe.

STRUKTUR PENULISAN BAHASA C

Untuk dapat memahami bagaimana suatu program ditulis, maka struktur dari program harus di mengerti terlebih dahulu. Tiap bahasa komputer mempunyai struktur program yang berbeda. Struktur program memberikan gambaran secara luas, bagaimana bentuk program secara umum.

Program C pada hakekatnya tersusun atas sejumlah blok fungsi. Sebuah program minimal mengandung sebuah fungsi. Fungsi pertama yang harus ada dalam program C dan sudah ditentukan namanya adalah main(). Setiap fungsi terdiri atas satu atau beberapa pernyataan, yang secara keseluruhan dimaksudkan untuk melaksanakan tugas khusus.

Bagian pernyataan fungsi ( sering disebut tubuh fungsi ) diawali dengan tanda kurung kurawal buka "{" dan di akhiri dengan tanda kurung kurawal tutup "}". Diantara kurunga kurawal itu dapat dituliskan statemen-statemen program C. Namun pada kenyataanya, suatu fungsi bisa saja tidak mengandung pernyataan sama sekali. Walaupun fungsi tidak memiliki pernyataan, kurung kurawal haruslah tetap ada. Sebab kurung kurawal mengisyaratkan awal dan akhir definisi fungsi.

Berikut ini adalah struktur dari program C



Bahasa C dikatakan sebagai bahasa pemrograman terstruktur karena strukturnya menggunakan fungsi-fungsi sebagai program-program bagiannya (subroutine). Fungsi-fungsi yang ada selain fungsi utama ( main()) merupakan program-program bagian.

Fungsi-fungsi ini dapat ditulis setelah fungsi utama atau diletakkan di file pustaka (library). Jika fungsi-fungsi diletakkan di file pustaka dan akan di pakai di suatu program, maka nama file judulnya (header file) harus di libatkan dalam program yang menggunakannya dengan preprocessor directive berupa # Include.

Untuk pengenalan Program C selanjutnya ...tunggu postingan selanjutnya....heheh


Referensi :
* wikipedia

0 comments: