Anda di halaman 1dari 23

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
Materi kuliah ini, termasuk master Dev-
C++ bisa diunduh di:
www.te.ugm.ac.id/~enas/progdas