Anda di halaman 1dari 6

BAB 1

BAHASA PEMROGRAMAN

A. Pengertian Bahasa Pemrograman

Program komputer adalah serangkaian instruksi yang mengarahkan


komputer untuk melakukan tugas tertentu. Seorang programmer, kadang-
kadang dinamakan developer, membuat atau memodifikasi program
komputer. Untuk menulis sebuah program kita menggunakan sebuah
bahasa pemrograman. Bahasa pemrograman adalah kumpulan dari kata-
kata yang sudah didefinisikan sebelumnya (predefined words) yang
dikombinasikan dengan menggunakan suatu aturan yang sudah
didefinisikan sebelumnya (predefined rules) yang biasanya disebut dengan
sintaks.

B. Sejarah dan Generasi Bahasa Pemrograman

Bahasa permograman dapat dikelompokkan ke dalam dua


kelompok yaitu bahasa tingkat rendah (low-level language) dan bahasa
tingkat tinggi (high-level language). Bahasa tingkat rendah bersifat
machine-dependent dimana bahasa pemrograman ini hanya berjalan pada
satu tipe komputer saja. Contoh bahasa dalam kelompok ini adalah bahasa
mesin dan bahasa assembly. Bahasa tingkat tinggi umumnya bersifat
machineindependent, dimana bahasa ini dapat berjalan pada tipe-tipe
komputer yang berbeda.

Sejak dulu hingga kini, bahasa pemrograman telah berevolusi dari


bahasa yang lebih mendekati bahasa mesin ke bahasa yang lebih
mendekati bahasa manusia. Pada awal kemunculan komputer sekitar tahun
1940an, bahasa pemrograman yang ada adalah bahasa mesin (machine
language). Masing-masing jenis komputer pada masa itu memiliki bahasa
mesinnya sendiri. Bahasa mesin terdiri dari kombinasi serangkaian bit 0
dan 1 seperti contoh pada Gambar 1.
Gambar 1. Program dalam Bahasa Mesin

Bahasa biner merupakan bahasa mesin yang di mengerti oleh


komputer, bahasa biner berbasis angka dua (2). Untuk memahami bahasa
biner ini maka terlebih dahulu kita harus mengetahui perpangkatan
bilangan dua (2) yang sudah tidak asing lagi. Jika kita ingin
menerjemahkan bahasa kita ke dalam bahasa mesin, maka kita harus
mengonversikannya menjadi bilangan-bilangan biner.

Misalnya Kita akan mengonversikan angka 254 yang merupakan


bilangan berbasis sepuluh (10) kedalam bilangan berbasis biner. Untuk
menyelesaikan contoh tersebut maka terlebih dahulu kita harus mengenal
perpangkatan bilangan dua. Setelah kita memahami bilangan berbasis dua
maka tahap selanjutnya adalah penyelesaian dengan mengurangkan
bilangan berbasis dua (2) secara beruntun. Angka 254 yang berbasis
sepuluh (10) diubah kedalam bilangan biner yang berbasis dua (2) dengan
langkah mengurangkan bilangan berbasis dua (2) secara beruntun. Jika ada
bernilai satu (1) dan jika tidak ada bernilai Nol (0), sehingga bilangan
Binernya adalah 11111110.

Pada tahun 1950an, Grace hopper, seorang matematikawan


membangun konsep dari sebuah bahasa pemrograman dengan
menggunakan simbol untuk mewakili instruksiinstruksi pada bahasa
mesin. Bahasa pemrograman ini dikenal dengan bahasa simbolik
(symbolic language). Contoh bahasa simbolik dapat dilihat pada Gambar
2. Pada Gambar 2 dapat dilihat perintah-perintah dasar pada pemrograman
dengan bahasa simbolik. Pola instruksi ini biasanya merupakan serialisasi
dari sejumlah bilangan biner yang digabungkan hingga membentuk
opcode untuk melakukan pemindahan (MOV), lompatan (JMP), operasi
aritmatika, penyimpanan (PUSH), ataupun pengambilan nilai (POP), dan
lain-lain. Sebuah program yang disebut assembler digunakan untuk
menerjemahkan simbol ke dalam instruksi yang sebenarnya dalam bahasa
mesin. Karena itulah symbolic language disebut juga assembly language.

Gambar 2. Program dalam bahasa simbolik

Perkembangan bahasa pemrograman selanjutnya mulai tahun


1960an yaitu dengan munculnya bahasa tingkat tinggi (high level
language). Bahasa tingkat tinggi dirancang sehingga programmer tidak
lagi harus memikirkan pengkodean sebuah instruksi mesin ke dalam
simbol-simbol. Beberapa contoh bahasa pemrograman tingkat tinggi
adalah BASIC, COBOL, Pascal, Ada, C, C++, dan Java. Struktur dari
bahasa tingkat tinggi umumnya telah mengikuti struktur bahasa manusia
(Gambar 3). Struktur pemrograman pada Gambar 3 menggambarkan
program perkalian dua buah bilangan integer yang dideklarasikan dalam
variable number1 dan number2 dan variable hasil dideklarasikan sebagai
bilangan integer dengan nama variable result.

Bahasa tingkat tinggi memiliki sebuah kesamaan dengan bahasa


simbolik, yaitu harus dikonversi ke dalam bahasa mesin. Hal ini karena
satu-satunya bahasa yang dimengerti komputer adalah bahasa mesin. Jadi
baik bahasa simbolik maupun bahasa tingkat tinggi keduanya tetap harus
melalui proses penerjemahan ke dalam bahasa mesin. Proses ini dikenal
dengan proses kompilasi (compilation). Compiler adalah program yang
mengkonversi seluruh source program ke dalam bahasa mesin sebelum
program tersebut dieksekusi.
Gambar 3. Program dalam bahasa C++

Adapun proses dari penulisan program sampai menghasilkan


sebuah executable (machine language) file adalah sebagai berikut:

1. menulis dan mengedit program

2. melakukan kompilasi terhadap program

3. melakukan link program dengan modul dan library yang dibutuhkan

Tempat yang digunakan untuk menulis dan mengedit program


disebut text editor. Program setelah ditulis dan disimpan dalam tempat
penyimpanan disebut sebagai source file. Pada tahap kedua source file
kemudian dikompilasi ke dalam bahasa mesin menjadi sebuah file yang
disebut object file. Object file kemudian mengalami proses ketiga yang
disebut dengan linking process. Linker akan menghubungkan semua fungsi
yang terdapat dalam program dengan modul dan library yang diperlukan
untuk menghasilkan executable file.

Sebuah compiler menerjemahkan seluruh isi program sebelum


mengeksekusinya. Sedangkan interpreter menerjemahkan dan
mengeksekusi satu pernyataan (statement) setiap waktu. Sebuah
interpreter membaca sebuah pernyataan dan mengkonversinya ke satu atau
lebih instruksi bahasa mesin dan kemudian mengeksekusi instruksi bahasa
mesin tersebut. Hal ini dilakukan sebelum interpreter bergerak ke
pernyataan berikutnya dalam program. Salah satu keuntungan interpreter
adalah ketika dia menemukan error pada saat mengkonverksi satu baris
kode program, pesan error akan segera ditampilkan pada layar dan
program berhenti dieksekusi. Berbeda dengan compiler, interpreter tidak
menghasilkan object program.

C. Kategori dan Contoh Bahasa Pemrograman Tingkat Tinggi

Bahasa pemrograman tingkat tinggi dikategorikan berdasarkan pendekatan


yang digunakan untuk menyelesaikan suatu masalah dan kateori dari
masalah yang dapat diselesaikan. Terdapat 5 kategori bahasa pemrograman
tingkat tinggi seperti terlihat pada Gambar 4.

Gambar 4. Kategori Bahasa Pemrograman

1. Bahasa prosedural mengeksekusi setiap baris perintah satu persatu dari


awal sampai akhir sesuai dengan urutan prosedur yang terdapat
didalamnya. Contoh bahasa pemrograman prosedural adalah
FORTRAN, COBOL, Pascal, dan C. Bahasa procedural dinamakan
juga bahasa generasi ketiga (third-generation languange (3GL)).
Dengan menggunakan bahasa pemrograman ini, progammer
menggunakan kata-kata seperti bahasa Inggris untuk menulis instruksi.
Sebagai contoh, PRINT untuk mencetak, ADD kependekan dari
addition (penambahan).

2. Bahasa berorientasi obyek memiliki pandangan yang berbeda untuk


menyelesaikan masalah. Bahasa berorientasi obyek memecah masalah
menjadi obyek-obyek yang saling berkaitan. Contoh bahasa
pemrograman berorientasi obyek adalah C++, Java dan C#.
3. Bahasa fungsional, sebuah program dianggap sebagai sebuah fungsi
matematika. Contoh bahasa pemrograman fungsional adalah LISP dan
Scheme.

4. Bahasa deklaratif menggunakan prinsip logika matematika untuk


menjawab masalah yang ada. Program terdiri dari beberapa statement
pendahuluan yang memuat fakta, untuk kemudian diakhiri dengan
beberapa kesimpulan. Contoh bahasa pemrograman deklaratif adalah
Prolog.

Anda mungkin juga menyukai