Download - Dasar Pemograman

Transcript
Page 1: Dasar Pemograman

Dasar Pemograman

Pertemuan Ke-2

ALFITH, S.Pd, M.Pd

Page 2: Dasar Pemograman

Pendahuluan : Konsep memprogram, bahasa pemrograman dan komputer

Page 3: Dasar Pemograman

Tujuan Perkuliahan …

Menguasai dasar-dasar pemrograman komputer:Perancangan program dan logika

pemrogramanImplementasi pemrograman komputer

menggunakan bahasa pemrograman C

Page 4: Dasar Pemograman

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

Page 5: Dasar Pemograman

Mengapa bahasa pemrograman??Mengapa harus memprogram??

Bahasa merupakan sarana untuk berkomunikasiUntuk ‘berkomunikasi’ dengan komputer kita perlu

menguasai ‘bahasa komputer’Bahasa yang dimengerti komputer adalah bahasa

pemrogramanMemprogram adalah proses berkomunikasi dengan

komputerTujuan memprogram komputer:memerintahkan

komputer untuk melakukan tugas-tugas komputasi dan input-output sesuai yang diinginkan pemrogram

Page 6: Dasar Pemograman

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.

Page 7: Dasar Pemograman

Bagaimana komputer menjalankan instruksi-instruksi pemrograman??

Gambaran sederhana komputer dan instruksi pemrograman:

komputer

eksekusi

‘memori’

eksekusi secara sekuensial (berurutan)

Instruksi 1

Instruksi 2

Instruksi 3

Instruksi 4

. . . .

Instruksi n

Page 8: Dasar Pemograman

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

Page 9: Dasar Pemograman

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.

Page 10: Dasar Pemograman

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

Page 11: Dasar Pemograman

Bahasa Generasi Ke-2 (bhs assembly)

Merupakan penyempurnaan bhs generasi pertama, sudah memasukkan unsur kata bahasa Inggris dalam bentuk singkat

Masih bersifat machine dependentPenulisan 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

Page 12: Dasar Pemograman

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

Page 13: Dasar Pemograman

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; }

Page 14: Dasar Pemograman

Tampilan program ketika dijalankan

Page 15: Dasar Pemograman

Pemrosesan program pada bahasa tingkat tinggi oleh komputer

Listing Program/source code (biasanya dalam

bentuk file teks)

File objek : merupakan program yang telah

diterjemahkan ke bahasa mesin

File binary/executable : file program yang siap

dieksekusi(dijalankan)

Proses kompilasi : menerjemahkan bahasa tingkat tinggi menjadi bahasa mesin dalam

bentuk file objek

Proses Link : menambahkan informasi tentang karakteristik komputer yang digunakan ke

dalam bhs mesin

Proses eksekusi : menjalankan program

yang telah dibuat

Page 16: Dasar Pemograman

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’

Page 17: Dasar Pemograman

Perancangan Program

Sebelum menulis program ada beberapa hal yang bisa dilakukan untuk membantu programer dalam merancang program :Pembuatan AlgoritmaPembuatan Flowchart (diagram alir)

Proses tersebut tidak harus dilakukan,karena fungsinya hanya untuk membantu merancang program

Page 18: Dasar Pemograman

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 b3. 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

Page 19: Dasar Pemograman

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)

Page 20: Dasar Pemograman

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

Decision Symbol:Represents a decision in the logic involving the comparisonOf two values.

Predefined Process Symbol:

Page 21: Dasar Pemograman

Contoh flowchart

Pertukaran 2 variabel

mulai

Inisialisasi :A = 3B = 5

C = A

Tampilkan A dan B

A = B

B = C

selesai

Tampilkan A dan B

Page 22: Dasar Pemograman

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

Page 23: Dasar Pemograman

Flowchart program hello worldmulai

quit = “/0”

Tampilkan “hello

world,dst”

quit = ‘q’ ?

Baca quit dari

keyboard

TIDAK

selesai

YA