Bahasa Pemrograman
Bahasa pemrograman adalah bahasa yang menjadi sarana manusia untuk berkomunikasi dengan komputer. Pikiran manusia yang tidak terstruktur harus dibuat terstruktur agar bisa berkomunikasi dengan komputer. Komputer memerlukan kepastian dan logika yang benar untuk dapat melakukan suatu instruksi tertentu. Untuk itu diperlukan algoritma yang baik dan benar.
Bahasa Mesin
- Bahasa mesin adalah bahasa yang berisi kode-kode mesin yang hanya dapat diinterpretasikan langsung oleh mesin komputer.
- Bahasa mesin sering juga disebut native code (sangat tergantung pada mesin tertentu). Bahasa ini merupakan bahasa level terendah dan berupa kode biner: 0 dan 1.
- Sekumpulan instruksi dalam bahasa mesin dapat membentuk microcode (semacam prosedur dalam bahasa mesin).
Contoh:
untuk mesin IBM/370
0001100000110101 = 1835 yang berarti mengkopikan isi
register 5 ke register 3
Keuntungan: Eksekusi cepat
Kerugian: Sangat sulit dipelajari manusia
Bahasa Assembly (mnemonic code)
- Bahasa assembly adalah bahasa simbol dari bahasa mesin.
- Setiap kode bahasa mesin memiliki simbol sendiri dalam bahasa assembly. Misalnya ADD untuk penjumlahan, MUL untuk perkalian, SUB untuk pengurangan, dan lain-lain.
- Sekumpulan kode-kode bahasa assembly dapat membentuk makroinstruksi.
- Bahasa assembly juga memiliki program pen-debug-nya, tidak seperti bahasa mesin. Misalnya: Turbo Assembler dan debug pada DOS. Assembler akan mencocokkan token simbol dari awal s/d akhir, kemudian dikodekan menjadi bahasa mesin.
Kelebihan: Eksekusi cepat, masih bisa dipelajari daripada bahasa mesin, file hasil sangat kecil
Kekurangan: Tetap sulit dipelajari, program sangat panjang.
Bahasa Tingkat Tinggi (High Level Language)
- Bahasa ini lebih dekat dengan bahasa manusia.
- Bahasa ini juga memberikan banyak sekali fasilitas kemudahan pembuatan program, misalnya: variabel, tipe data, konstanta, struktur kontrol, loop, fungsi, prosedur dan lain-lain. Contoh: Pascal, Basic, C++, dan Java.
- Mendukung information hiding, enkapsulasi, dan abstract data type.
- Bahasa Tingkat tinggi memiliki generasi, misalnya generasi ke-3 (Pascal, C/C++) dan generasi ke-4 (Delphi, VB, VB.NET, Visual Foxpro)
Keuntungan:
- Mudah dipelajari
- Mendekati permasalahan yang akan dipecahkan
- Kode program pendek
Kerugian: Eksekusi lambat
Bahasa yang berorientasi pada masalah spesifik (specific problem oriented).
- Bahasa ini adalah bahasa yang digunakan langsung untuk memecahkan suatu masalah tertentu. Misalnya SQL untuk database, Regex untuk mencocokkan pola pada string tertentu.
- Jenis bahasa ini juga masuk ke bahasa tingkat tinggi.