Bahasa (language)
Bahasa adalah suatu sistim untuk berkomunikasi. Bahasa
tertulis menggunakan simbol
(yaitu
huruf) untuk membentuk kata. Dalam ilmu komputer,bahasa manusia disebut bahasa
alamiah
(natural
languages), dimana komputer tidak bisa
memahaminya, sehingga diperlukan
suatu
bahasa komputer.
Bahasa
pemrograman (programming language)
Komputer mengerjakan transformasi data berdasarkan kumpulan
perintah - program -
yang
telah dibuat oleh pemrogram. Kumpulan perintah ini harus dimengerti oleh
komputer,
berstruktur
tertentu (syntax) dan bermakna. Bahasa pemrograman merupakan notasi untuk
memberikan
secara tepat program komputer. Berbeda dengan bahasa alamiah, mis. Bahasa
Indonesia,
Inggris dsb. yang merupakan bahasa alamiah (natural language), sintaks dan
semantik
bahasa pemrograman (komputer) ditentukan secara kaku, sehingga bahasa
pemrograman
juga disebut sebagai bahasa formal (formal language).
Generasi
bahasa pemrograman:
• Generasi I: machine language
• Generasi II: assembly
language : Asssembler
• Generasi III: high-level
programming language: C, PASCAL, dsb.
• Generasi IV: 4 GL (fourth-generation
language): SQL
Bahasa Tingkat
Rendah (low-level language)
Merupakan bahasa assembly atau bahasa mesin. Lebih dekat ke
mesin (hardware),
dimana
high-level programming languages dekat pada bahasa manusia.
Bahasa Mesin (machine
language)
Bahasa
mesin merupakan representasi tertulis machine code (kode mesin), yaitu kode
operasi suatu mesin tertentu. Bahasa ini bersifat khusus
untuk mesin tertentu dan
"dimengerti" langsung oleh mesin, sehingga
pelaksanaan proses sangat cepat.
Bahasa Assembly (assembly
language)
Bahasa
rakitan (assembly
language) merupakan notasi untuk menyajikan
bahasa
mesin yang lebih mudah dibaca dan dipahami oleh manusia.
Bahasa ini sudah
menggunakan simbol alpabet yang bermakna (mnemonic). Contoh “MOV AX 1111”,
pindahkan ke register AX nilai 1111.
Bahasa Tingkat
Tinggi (high-level language)
Adalah bahasa pemrograman yang dekat dengan bahasa manusia,
kelebihan utama
dari
bahasa ini adalah mudah untuk di baca, tulis, maupun diperbaharui, sebelum bisa
dijalankan
program harus terlebih dahulu di-compile. Contoh Ada, Algol, BASIC, COBOL,
C, C++,
FORTRAN, LISP, dan Pascal, dsb.
Pada generasi bahasa pemrograman terakhir sekarang ini,
kedua cara interpretasi dan kompilasi digabungkan dalam satu lingkungan
pengembangan terpadu (IDE = integrated development environment).
Fourth-Generation
Language (4GL)
Lebih dekat ke bahasa manusia dibandingkan dengan high-level
programming
languages.
Biasanya dipakai untuk mengakses database. Contoh perintah pada bahasa SQL:
FIND
ALL RECORDS WHERE NAME IS "JOHN"
Bahasa
Pemrograman untuk tujuan tertentu
Tabel 1. Bahasa Pemrograman untuk tujuan tertentu
Data terstruktur | ADA, C/C++, PASCAL | Assembler, BASIC |
Proyek cepat | BASIC | PASCAL, ADA, Assembler |
Eksekusi cepat | Assembler, C | BASIC, Intrepreter Language |
Kalkulasi matematika | FORTRAN | PASCAL |
Mengunakan memory dinamis | PASCAL,C | BASIC |
Lingkungan bermemori terbatas | BASIC, Assembler, C | FORTRAN |
Program real-time | ADA, Assembler, C | BASIC, FORTRAN |
Manipulasi string | BASIC, PASCAL | C |
Program mudah dikelola | PASCAL, ADA | C, FORTRAN |
Compiler dan Intepreter
Compiler adalah suatu program yang menterjemahkan bahasa program (source code)
ke
dalam bahasa objek (object
code). Compiler menggabungkan keseluruhan bahasa program
dikumpulkan
kemudian disusun kembali.
Compiler memerlukan waktu untuk membuat suatu program yang dapat
dieksekusi
oleh
komputer. Tetapi, program yang diproduksi oleh Compiler bisa berjalan lebih cepat
dibandingkan
dengan yang diproduksi oleh Interpreter ,
dan bersifat independen.
Interpreter berbeda dengan Compiler, Interpreter
menganalisis dan mengeksekusi
setiap baris dari program tanpa melihat program secara
keseluruhan. Keuntungan dari
Interpreter adalah dalam eksekusi yang bisa dilakukan dengan segera.
Tanpa melalui tahap
kompilasi,
untuk alasan ini Interpreter
digunakan pada saat pembuatan program
berskala
besar
Tabel
3. Perbedaan Compiler dan Interpreter
NO | Interpreter | Compiler |
1 | Menerjemahkan instruksi perInstruksi | Menerjemahkan secara keseluruhan |
2 | Tidak menghasilkan objek program | Menghasilkan objek program |
3 | Tidak menghasilkan executable program karena langsung dijalankan pada saat program Diinterpretasi | Menghasilkan executable program, sehingga dapat langsung dijalankan |
4 | Proses interpretasi terasa cepat, karena tiap-tiap instruksi langsung dikerjakan dan dapat dilihat hasilnya | Proses kompilasi lama, karena sekaligus menerjemahkan seluruh instruksi program |
5 | Source program terus dipergunakan karena tidak dihasilkan executable program | Source program sudah tidak dipergunakan lagi untuk mengerjakanprogram |
Tipe Pemrograman
1. Pemrograman
terstruktur
Pemrograman terstruktur adalah cara pemrosesan data yang
terstuktur. Terstruktur
dalam:
analisa, cara dan penulisan program.
2. Bahasa
pemrograman prosedural – terstruktur
Bahasa pemrograman prosedural adalah bahasa pemrograman yang
mendukung
pembuatan
program sebagai kumpulan prosedur. Prosedur-prosedur ini dapat saling
memanggil
dan dipanggil dari manapun dalam program dan dapat menggunakan
parameter
yang berbeda-beda untuk setiap
pemanggilan. Prosedur adalah bagian dari
program
untuk melakukan operasi-operasi yang sudah ditentukan dengan menggunakan
parameter
tertentu. Bahasa pemrograman terstruktur adalah pemrograman yang
mendukung
abstraksi data, pengkodean terstruktur dan kontrol program terstruktur.
Kontrol
program terstruktur:
1.
Runtun - urut (sequence)
2.
Pilihan (selection)
3.
Pengulangan (repetition
- loop)
ALGORITMA
Perencanaan dan perancangan program komputer juga disebut
pembuatan algoritma.
Beberapa
definisi algoritma:
a.
kumpulan urutan perintah yang
menentukan operasi-operasi tertentu yang diperlukan
untuk menyelesaikan suatu masalah ataupun mengerjakansuatu
tugas".
b.
logika, metode dan tahapan (urutan) sistematis
yang digunakan untuk memecahkan suatu
permasalahan.
Algoritma
- dan tentu program yang baik, bercirikan:
a.
Tepat sasaran, benar, sederhana,
standar dan efektif : memenuhi spesifikasi pekerjaan dan bekerja sesuai tujuan
b. Flexible dan portable:
- Flexible
untuk dikembangkan lebih lanjut - Portable untuk
digunakan pada berbagai sistem dan mesin
c. Bersih dari
kesalahan sistem ataupun logic
d. Murah: - Efisien
dalam penggunaan piranti memori dan penyimpanan lainnya. - Cepat
waktu pelaksanaannya.
e. Didokumentasi
dengan baik untuk pengoperasian, pemeliharaan dan pengembangan.
f. Algoritma
merupakan pemberian (description) pelaksanaan suatu proses.Sebuah proses
dikerjakan oleh pemroses mengikuti algoritma yang sudah
dibuat. Algoritma merupakan
urutan langkah instruksi yang logis. Setiap langkahinstruksi mengerjakan suatu tindakan
aksi.
g. Logis,
terstruktur, sistematis, Semua operasi terdefinisi
h. Ditulis dengan bahasa yang standar dengan
format pemrograman agar mudah untuk diimplementasikan dan tidak menimbulkan
arti ganda
i. Semua proses
harus berakhir setelah sejumlah langkah dilakukan
Aturan Penulisan
Teks Algoritma
Tidak ada notasi yang baku dalam penulisan teks algoritma.
Algoritma bukanlah
program
yang harus mengikuti aturan-aturan tertentu. Meski demikian, algoritma
dituliskan
mendekati
gaya bahasa pemrograman umumnya. Misal, tulis nilai X dan Y, dituliskan dalam
algoritma
sebagai write(X,Y). Perhatikan dalam notasi write(X,Y) ini hanya memerintahkan
penyajian
nilai X ke piranti keluaran (output). Dalam notasi itu juga tidak memasalahkan
format
ataupun bentuk-bentuk tampilan lainnya, seperti dicetak dalam satu baris X dan
Y,
pemakaian
pemisah antara X dan Y menggunakan koma atau spasi. Hal-hal yang bersifat
teknis
ini baru dipikirkan waktu penulisan program. Algoritma adalah bebas bahasa
pemrograman.
Teks Algoritma
Mengikuti alur konsep pemrograman prosedural, suatu teks
algoritma disusun dalam
tiga
bagian, yaitu:
a.
Bagian kepala algoritma,
b.
Bagian deklarasi,
c.
Bagian deskripsi algoritma.
Setiap bagian disertai dengan penjelasan atau dokumentasi
tentang maksud pembuatan
teks.
Bagian penjelasan diawali dan diakhiri dengan simbol { dan }.
Algoritma
NAMA_ALGORITMA { Penjelasan tentang algoritma yang menguraikan secara
singkat
hal-hal yang dilakukan oleh algoritma }
DEKLARASI
{ Semua nama yang digunakan, meliputi nama-nama: tipe, konstanta, variabel.
Juga
nama sub-program dinyatkan di sini }
DESKRIPSI
{ Semua langkah atau aksi algoritma dituliskan di sini }
Diagram Alir (Flow
chart)
Merupakan
bentuk grafis/visual dari algoritma Bentuk umum dari simbol-simbol dalam diagram alir
Tidak ada komentar:
Posting Komentar