Anda di halaman 1dari 22

Pemrograman Dasar

Pendahuluan : Konsep memprogram,


bahasa pemrograman dan komputer
Tujuan Perkuliahan …
• Menguasai dasar-dasar pemrograman
komputer:
– Perancangan program dan logika pemrograman
– Implementasi pemrograman komputer
menggunakan bahasa pemrograman C
Yang perlu disiapkan …
• Buku acuan :
– The C programming language – Brian W Kernighan, Dennis M
Ritchie
– Buku-buku lain tentang C (tersedia banyak e-book C di internet
misalnya di www.cplusplus.com)
• Komputer PC/laptop dengan kompiler C/C++ untuk
pengerjaan tugas di rumah. Kompiler C/C++ yang bisa
digunakan:
– Dev C++ (gratis, bisa didownload dari internet)
– Visual C++
– Borland C++
– Turbo C++, dll
Mengapa bahasa pemrograman??
Mengapa harus memprogram??

Bahasa merupakan sarana untuk berkomunikasi


• Untuk ‘berkomunikasi’ dengan komputer kita perlu
menguasai ‘bahasa komputer’
• Bahasa yang dimengerti komputer adalah bahasa
pemrograman
• Memprogram adalah proses berkomunikasi dengan komputer
• Tujuan memprogram komputer:memerintahkan komputer
untuk melakukan tugas-tugas komputasi dan input-output
sesuai yang diinginkan pemrogram
• Komputer merupakan salah satu produk teknologi
tinggi yang dapat melakukan hampir semua
pekerjaan diberbagai disiplin ilmu, tetapi komputer
hanya akan merupakan barang mati tanpa adanya
bahasa pemrograman untuk menggambarkan apa
yang kita kerjakan, sistem bilangan untuk
mendukung komputasi, dan matematika untuk
menggambarkan prosedur komputasi yang kita
kerjakan.
Bagaimana komputer menjalankan instruksi-
instruksi pemrograman??
• Gambaran sederhana komputer dan instruksi
pemrograman:
‘memori’

Instruksi 1

Instruksi 2
eksekusi
eksekusi secara
Instruksi 3
sekuensial
komputer
(berurutan)
Instruksi 4

....

Instruksi n
Perkembangan Bahasa Komputer
Berdasarkan tingkat ‘kecanggihannya’:
1. Bahasa Generasi Pertama (1st GL):bahasa
mesin
2. Bahasa Generasi Kedua(2nd GL):bahasa
assembly
3. Bahasa Generasi Ketiga:Bahasa Tingkat
Tinggi  yang akan kita pelajari
• Ukuran ‘kecanggihan’ suatu bahasa pemrograman
tersebut diukur dari kemudahan programmer
menyusun suatu program
• Lebih ‘tidak canggih’ bukan berarti tidak ‘powerful’
 kadang-kadang dalam membuat suatu program
dibutuhkan penggunaan bahasa tingkat 1 atau 2 atau
kombinasi antara bahasa tingkat tinggi dengan
bahasa assembly. Tergantung tujuan programnya
dan komputer jenis apa yang diprogram.
Bahasa Generasi Pertama (Bhs Mesin)

• Merupakan kode-kode bilangan biner, terdiri dari kombinasi


bilangan ‘1’ dan ‘0’
• Setiap kombinasi mewakili satu instruksi
• Instruksi bahasa mesin tergantung dari jenis komputer yang
dipakai(machine dependent)
• contoh: instruksi transfer data dari akumulator ke register:
– Komputer intel 8051 1) : ‘01000111B’ (47H)
– Komputer Z80 2) : ‘00010011B’ (13H)
• Pemrograman bahasa mesin: instruksi-instruksi langsung
dimasukkan ke memori untuk dieksekusi komputer
1) Intel 8051 adalah komputer generasi lama yang sekarang digunakan sebagai
mikrokontroler
2) Z80 adalah komputer generasi lama produksi Zilog
Bahasa Generasi Ke-2 (bhs assembly)
• Merupakan penyempurnaan bhs generasi pertama, sudah
memasukkan unsur kata bahasa Inggris dalam bentuk singkat
• Masih bersifat machine dependent
• Penulisan sudah jauh lebih mudah dari bahasa mesin,tetapi
programmer tetap harus memahami perangkat keras
komputer
• Beberapa variabel masih mengacu pada register,alamat
memori maupun I/O
• Contoh: instruksi transfer data dlm bhs assembly:
– Komputer 8051 : MOV R1,#22H
– Komputer AVR 3) : LDI R1,0x22
3) AVR digunakan sebagai mikrokontroller produksi Atmel
Bahasa Generasi ke-3 (Bhs Tingkat tinggi)
• Memasukkan lebih banyak unsur kata bahasa Inggris yang
digunakan sehari-hari dan mempunyai sintaksis yang lebih
baik
• Merupakan bahasa pemrograman yang digunakan sekarang
pada umumnya untuk memprogram komputer
• Contoh macam-macam bahasa tingkat tinggi: Pascal, C, C+
+,BASIC dsb
Contoh listing program dalam bahasa C
:source code program hello world1
• #include <stdio.h>

• int main ()
• {
• char quit;

• quit = '\0';
• while (quit != 'q')
• {
• printf("Hello World!\n");
• printf("Press q then enter to quit\n");
• scanf("%c",&quit);
• }

• return 0;
• }
Tampilan program ketika
dijalankan
Pemrosesan program pada bahasa tingkat
tinggi oleh komputer
Listing Program/source
code (biasanya dalam
bentuk file teks)

Proses kompilasi : menerjemahkan bahasa


tingkat tinggi menjadi bahasa mesin dalam
bentuk file objek

File objek : merupakan


program yang telah
diterjemahkan ke bahasa
mesin

Proses Link : menambahkan informasi tentang


karakteristik komputer yang digunakan ke
dalam bhs mesin

File binary/executable : file


program yang siap
dieksekusi(dijalankan)

Proses eksekusi :
menjalankan program
yang telah dibuat
IDE (Integrated Development Environment)

• Pada umumnya programmer tidak perlu


menjalankan pemrosesan program seperti di
atas karena beberapa bahasa
pemrograman(termasuk C++) sudah
mempunyai IDE
• Dengan IDE, proses kompilasi,link, dan
eksekusi cukup dilakukan dengan sekali ‘klik’
Perancangan Program
• Sebelum menulis program ada beberapa hal
yang bisa dilakukan untuk membantu
programer dalam merancang program :
– Pembuatan Algoritma
– Pembuatan Flowchart (diagram alir)
• Proses tersebut tidak harus dilakukan,karena
fungsinya hanya untuk membantu merancang
program
Algoritma
• Merupakan penjabaran urutan proses yang akan dikerjakan
oleh program yang akan kita rancang dalam bentuk kalimat-
kalimat
• Contoh : Algoritma pertukaran data 2 buah variabel
(misalnya variabel a dan b,pada awal program bernilai a=3
dan b=5, pada akhir program bernilai a=5 dan b=3)
1. Inisialisasi variabel : a=3, b=5, deklarasikan variabel tambahan yaitu
c
2. Tampilkan nilai awal a dan b
3. Transfer nilai a ke c (c = a)
4. Transfer nilai b ke a (a = b)
5. Transfer nilai c ke b (b = c)
6. Tampilkan nilai a dan b
Flowchart (diagram alir)
• Merupakan penjabaran urutan proses yang akan dikerjakan
oleh program yang akan kita rancang dalam bentuk
diagram(grafis)
• Tiap-tiap penanda dalam program mempunyai simbol dalam
flowchart
• Penanda-penanda tersebut adalah:
– Awal/akhir program (terminal)
– Suatu proses dalam program (process)
– Input/output
– Proses yang telah terdefinisi (Predefined Process)
– Pengambilan keputusan (decision)
Simbol –simbol flowchart
Terminal Symbol:
indicates the starting or stopping pointin the logic.

Input/Output Symbol:
Represents an input or output process in an algorithm

Process Symbol:
Represents any single process in an algorithm

Predefined Process Symbol:

Decision Symbol:
Represents a decision in the logic involving the comparison
Of two values.
mulai

Contoh flowchart
Inisialisasi :
A=3
B=5

• Pertukaran 2 variabel
Tampilkan
A dan B

C=A

A=B

B=C

Tampilkan
A dan B

selesai
Algoritma program ‘hello world’
• Penjelasan program hello world dalam sebuah
algoritma:
1. Mulai
2. Deklarasi variabel quit bertipe char
3. Inisialisasi quit dengan nilai “/0”
4. Ketika quit tidak bernilai ‘q’ lakukan hal berikut terus
menerus:
4.1. tampilkan “hello world .. dst”
4.2. baca variabel quit dari keyboard disertai penekanan enter
(variabel quit akan ter-update)
5. Selesai
Flowchart program hello world
mulai

quit = “/0”

quit = ‘q’ ? TIDAK

Tampilkan
“hello
world,dst”

YA
Baca quit
dari
keyboard

selesai

Anda mungkin juga menyukai