Anda di halaman 1dari 60

POD

Intro
POD

Rezki Yuniarti, MT.


Contact : rezkiy@gmail.com (non exam / quiz etc)
exam.rzk@gmail.com (all exam, take home test, etc)
Sources : copy
Peraturan dan Tata Tertib

• Mahasiswa/i tertib dan rapi, menggunakan


sepatu (tidak menggunakan sendal)
• Gadgets dimatikan
• HP dimatikan/silent
• Toleransi keterlambatan maksimal 20 menit,
selebihnya mahasiswa/i diperbolehkan masuk
untuk mengikuti perkuliahan dengan tanpa
mengisi daftar hadir

Rezki Yuniarti, MT.


Kehadiran dan UAS

• Presentasi kehadiran minimal 80%


• Harap diperhatikan "kehadiran merupakan syarat
Mahasiswa/i untuk mengikuti UAS"

Rezki Yuniarti, MT.


Komponen nilai

• QTA : 20%
• UTS : 35%
• UAS : 45%
------------------------------------------------------------------
100%
Komponen tersebut dapat berubah sewaktu-waktu
disesuaikan dengan bobot tugas

Rezki Yuniarti, MT.


Referensi

• H. M. Deitel - Deitel & Associates, Inc., Java™ How to


Program, Sixth Edition, Prentice Hall, 2004
• Lewis, Loftus, Java Software Solution 5th edition,
Pearson International Edition
• Java Education & Development Initiative (JEDI),
Introduction to Programming 1
• http://java.sun.com
• Sumber-sumber lain yang mendukung perkuliahan

Rezki Yuniarti, MT.


Deskripsi Pembelajaran
• Pengenalan POD membahas tentang pemrograman
OBJEK menggunakan bahasa pemrograman Java, dan
menggunakan Notepad sebagai teks editor atau Jcreator
sebagai integrated development environment (IDE).

• Sebagai pengenalan, akan dibahas:


– Perbedaan komponen pada komputer
– Perbedaan sistem bilangan dan konversinya
– Strategi-strategi pemecahan masalah

• Pada setiap topik, akan dimunculkan beberapa panduan


penulisan program.

Rezki Yuniarti, MT.


Sistem Komputer
tujuan

Pada akhir pembahasan, mahasiswa diharapkan dapat:

• Mengidentifikasi perbedaan komponen-komponen pada


komputer
• Mengetahui tentang bahasa pemrograman dan kategorinya
• Mengerti alur kerja pembuatan program (algoritma) dan
menerapkannya pada pemecahan masalah
• Mempelajari perbedaan sistem bilangan dan konversinya
pengenalan

• Komputer
– Sebuah mesin yang melaksanakan berbagai macam tugas
berdasarkan perintah khusus

• Dua komponen utama:


– Hardware
• Bagian komputer yang dapat diukur
• Terdiri atas bagian elektronik dan mekanik
– Software
• Bagian komputer yang tidak dapat diukur
• Terdiri dari data dan program komputer
Komponen Dasar pada Komputer : Hardware

CPU
– Central Processing Unit
– Processor merupakan “otak” pada komputer
– Yang melakukan komputasi dasar dalam sistem
– Contoh: Pentium, Athlon dan SPARC.
Komponen Dasar pada Komputer : Hardware

Memori
– Tempat dimana dapat ditemukannya data dan
perintah yang dibutuhkan oleh CPU untuk
melakukan tugas-tugas yang ditetapkan
– 2 Tipe:
• Memori utama (Main Memory)
• Memori Sekunder (Secondary Memory)
Komponen Dasar pada Komputer : Hardware

Memori Utama

– Digunakan untuk mengendalikan program dan data,


dimana prosesor secara aktif bekerja
– Tidak digunakan untuk penyimpanan jangka panjang
– Biasanya disebut dengan RAM (Random Access
Memory)
– Diperlukan sebagai volatile storage – yang artinya
ketika komputer dimatikan, semua informasi yang
berada pada memory utama akan terhapus
Komponen Dasar pada Komputer : Hardware

Memory sekunder

– Digunakan untuk mengendalikan program dan data


untuk penggunaan jangka panjang.
– Contoh dari memory sekunder adalah hard disk dan
cd-rom.
– Diperlukan sebagai non-volatile storage
Komponen Dasar pada Komputer : Hardware

Perbandingan antara memory utama dan memory


sekunder :
Komponen Dasar pada Komputer : Hardware

I/O Device
– Digunakan supaya sistem komputer dapat berinteraksi
dengan dunia luar dengan cara memindahkan data ke
dalam dan keluar sistem
– Contoh:
• Input device: keyboard, mouse dan mikrofon
• Output device: monitor, printer dan speaker
Komponen Dasar pada Komputer : Software

• Software
– Suatu program yang digunakan oleh komputer untuk
melakukan suatu fungsi
– Disimpan pada beberapa piranti keras (hardware) seperti
hard disk, tetapi software sendiri bersifat tidak dapat
diukur (intangible)
– data yang digunakan komputer dapat berupa apapun
yang program perlukan
• Program
– Tindakan seperti instruksi untuk processor.
Komponen Dasar pada Komputer : Software

Beberapa Tipe Program Komputer


– Program Sistem
– Program Aplikasi
– Compiler
Komponen Dasar pada Komputer : Software

Program Sistem

– Program yang diperlukan untuk menyimpan semua


sistem hardware dan software yang berjalan secara
bersamaan

– Contoh : Sistem Operasi seperti Linux, Windows,


Unix, Solaris, MacOS
Komponen Dasar pada Komputer : Software

Program Aplikasi

– Program yang digunakan user untuk


menyelesaikan tugas mereka

– Contoh : Word Processor, Game programs,


Spreadsheets
Komponen Dasar pada Komputer : Software

Compiler

– Menerjemahkan program komputer ke dalam


bahasa mesin

– Bahasa mesin
• Bahasa yang dimengerti oleh komputer.
Bahasa pemrograman

Bahasa Pemrograman
– Suatu teknik komunikasi yang distandarisasi untuk
menyatakan instruksi pada komputer

– Seperti bahasa manusia, masing-masing bahasa memiliki


sintaks dan tata-bahasa sendiri

– Terdapat perbedaan tipe dari bahasa pemrograman yang


dapat digunakan untuk membuat suatu program, tetapi
hal itu tergantung pada bahasa yang Anda gunakan,
instruksi-instruksi ini diterjemahkan ke dalam bahasa
mesin yang dapat dimengerti oleh komputer.
Kategori bahasa pemrograman

Bahasa Pemrograman Tingkat Tinggi


– Suatu bahasa pemrograman yang lebih mudah
dioperasikan, untuk beberapa extent platform-
independent, dan abstrak dari operasi prosesor komputer
tingkat rendah seperti mengakses memory

– Suatu statement pemrograman dapat diterjemahkan ke


dalam satu atau beberapa perintah-perintah mesin oleh
sebuah compiler.

– Contoh: Java, C, C++, Basic, Fortran


Kategori bahasa pemrograman

• Bahasa Assembly Tingkat Rendah

– Bahasa assembly serupa dengan bahasa mesin, tetapi


bahasa assembly jauh lebih mudah untuk diprogram
karena programmer dapat mengganti nama menjadi
angka

– Bahasa assembly tersedia untuk masing-masing keluarga


CPU, dan setiap instruksi assembly diterjemahkan ke
dalam satu perintah mesin oleh sebuah program
assembler
Kategori bahasa pemrograman

catatan:

– Istilah “tingkat tinggi" dan “tingkat rendah" merupakan relasi


turunan.

– Bahasa assembly digolongkan dalam tingkat rendah,


sedangkan COBOL, C, dll. digolongkan dalam tingkat tinggi.

– Banyak programmer saat ini lebih mengacu pada bahasa yang


belakangan disebut sebagai tingkat rendah
Alur Kerja Pembuatan Program

Langkah-langkah dasar menyelesaikan masalah pada


komputer:

1. Mendefinisikan masalah
2. Menganalisa masalah
3. Mendesain algoritma dan representasi atau penyajian
(Pseudocode atau flowchart)
4. Coding dan debugging
1. Mendefinisikan Masalah
• Suatu masalah yang dideklarasikan secara jelas sudah
merupakan setengah solusi.

• Pemrograman komputer memerlukan pendefinisian


masalah terlebih dahulu sebelum kita mencoba untuk
membuat sebuah solusi.

• Saatnya kita mendefinisikan contoh permasalahan kita:


“Buatlah sebuah program yang akan menampilkan
berapa kali suatu nama tampil pada sebuah daftar.”
2. Menganalisa Masalah
• Setelah masalah telah cukup didefinisikan, pendekatan paling sederhana,
paling efisien dan paling efektif untuk menyelesaikan masalah harus
dirumuskan.

• Biasanya, langkah ini melibatkan pemecahan masalah ke dalam sub


permasalahan yang lebih sederhana dan lebih kecil.

• Contoh Permasalahan:
– Hitung berapa kali suatu nama tampil pada sebuah daftar

• Input program:
– Daftar dari nama-nama (kita sebut nameList)
– Nama yang dicari (kita sebut keyName)

• Output program:
– Jumlah seringnya suatu nama tampil pada suatu daftar
3. Desain Algoritma & penyajian

Algoritma
– Langkah-langkah yang jelas dan dengan spesifikasi yang
tidak ambigu sangat dibutuhkan dalam memecahkan suatu
permasalahan

– Mungkin juga dinyatakan dalam :


• Bahasa manusia (Bahasa Inggris, Bahasa Tagalog)
• Representasi grafik seperti flowchart atau diagram alur
• Pseudocode – yang menjembatani antara bahasa
manusia dengan bahasa pemrograman
3. Desain Algoritma dan
Penyajian dalam Bahasa Manusia

Menyatakan solusi melalui bahasa manusia:

1. Ambil daftar dari nama-nama, kita sebut dengan nameList

2. Ambil nama yang akan dicari, kita sebut dengan keyname

3. Bandingkan keyname pada masing-masing nama dalam nameList

4. Jika keyname sama dengan nama pada daftar, tambahkan 1 pada count
(penghitungan)

5. Jika semua nama telah dibandingkan, keluarkan hasil tersebut


3. Desain Algoritma dan
Penyajian - Flowchart

Nyatakan solusi melalui sebuah flowchart:


Simbol Flowchart
Simbol Flowchart
Simbol Flowchart

catatan:
Ini hanya sebagai petunjuk untuk simbol-simbol yang umum dipakai dalam
pembuatan flowcharts. Anda dapat menggunakan simbol apapun dalam
pembuatan flowcharts Anda, selama Anda konsisten dalam penggunaan
simbol-simbol tersebut.
3. Desain Algoritma dan
Penyajian- Pseudocode
Menyatakan solusi menggunakan pseudocode:

Let nameList = List of Names


Let keyName = the name to be sought
Let Count = 0
For each name in NameList do the following
if name == keyName
Count = Count + 1
Display Count
4. Coding dan Debugging
• Setelah membuat algoritma-nya, sekarang memungkinkan untuk
membuat source code-nya. Menggunakan algoritma sebagai dasar, source
code sekarang dapat ditulis menggunakan bahasa pemrograman yang
telah dipilih.

• Debugging
– Proses perbaikan beberapa error (bug) pada program Anda
Tipe-Tipe Error

• Compile-time error atau syntax error


– Terjadi jika terdapat syntax error pada code.
– Compiler akan mendeteksi error dan program tidak akan melakukan
kompilasi. Dalam hal ini, programmer tidak dapat menghasilkan program
eksekusi yang user dapat jalankan hingga error diperbaiki.

• Runtime Error
– Compiler tidaklah sempurna sehingga tidak dapat menangkap semua error
pada waktu proses kompilasi. Hal ini sepenuhnya benar untuk error yang
logis seperti pengulangan tanpa batas. Tipe error ini disebut dengan runtime
error.
Sistem bilangan
• Bilangan dapat direpresentasikan dalam berbagai macam
cara.

• Representasi didasarkan pada apa yang disebut dengan BASIS.

• Anda menulis bilangan ini sebagai mana berikut:


Bilangan basis
Sistem bilangan
Berikut ini representasi paling umum.

– Desimal (basis 10)


• Umum digunakan
• Digit valid dari 0 hingga 9
• Contoh: 12610 (biasanya hanya ditulis 126)

– Biner (basis 2)
• Digit valid adalah 0 dan 1
• Contoh: 11111102
Sistem bilangan
Berikut ini representasi paling umum. (lanjutan)

– Oktal (basis 8)
• Digit valid dari 0 hingga 7
• Contoh: 1768
– Heksadesimal (basis 16)
• Digit valid dari 0 hingga 9 dan A hingga F (atau dari a hingga f)
• Contoh: 7E16
Sistem bilangan

Contoh penggunaan bilangan hexa


Konversi: Desimal ke Biner

Metode:

– Secara berkesinambungan membagi bilangan dengan 2


– Mendapatkan sisa (yang mana bisa berupa 0 atau 1)
– Ambil nomor sisa tersebut menjadi bentuk biner
– Ambil hasil tersebut dan bagi dengan bilangan 2
– Ulangi proses seperti tadi hingga hasil mencapai 0 atau 1
– Kita akhirnya mendapat semua sisa dari sisa yang sebelumnya, dan hasil
akhirnya adalah dalam bentuk biner
– CATATAN: Untuk digit terakhir yang hasilnya telah kurang dari pembagi (yaitu
2) copy nilai tersebut ke sisa.
contoh: Desimal ke Biner
Konversi: Biner ke Desimal
Metode:

– Kita mengalikan digit biner ke "2 dinaikkan ke posisi bilangan biner"


– Kita kemudian menambahkan semua produk untuk mendapatkan hasil
bilangan desimal.
contoh: Biner ke Desimal
Konversi: Desimal ke Oktal/Heksadesimal

Metode:
– Konversi bilangan desimal ke Oktal atau heksadesimal pada dasarnya
sama seperti konversi dari desimal ke biner.
– Bagaimanapun, sebagai ganti 2 sebagai pembagi, Anda menggantinya
dengan 8 (untuk oktal) atau 16 (untuk heksadesimal)
contoh: Desimal ke Oktal/Heksadesimal
Konversi: Oktal/Heksadesimal ke Desimal

Metode:
– Konversi bilangan oktal atau heksadesimal juga sama caranya seperti
pada konversi bilangan biner ke desimal.
– Untuk melakukannya, kita hanya akan mengganti bilangan basis 2
dengan 8 untuk Oktal dan 16 untuk heksadesimal.
contoh: Oktal/Heksadesimal ke Desimal
Konversi: Biner ke Oktal

• Metode:
– membagi bilangan biner ke dalam
kumpulan 3 digit (dari kanan ke
kiri)
– Ganti dengan nol jika digit bilangan
tidak dapat dibagi dengan 3
– Mengkonversi masing-masing
pembagi ke dalam digit oktal nya
yang sesuai
– Berikut ini tabel yang
menunjukkan representasi biner
dari masing-masing digit oktal.
Contoh: Biner ke Oktal
Konversi: Oktal ke Biner
Metode:

– Mengkonversi bilangan oktal ke biner hanya kebalikan dari apa yang


telah diberikan sebelumnya.
– Mengkonversi masing-masing digit oktal ke dalam representasi biner
nya (diberikan pada tabel) dan menggabungkannya.
– Hasilnya merupakan representasi biner.
Contoh: Oktal ke Biner
Konversi: Biner ke Heksadesimal

• Metode:
– Membagi bilangan biner ke dalam
kumpulan 4 digit (dari kanan ke kiri)
– Ganti dengan nol jika digit bilangan
tidak dapat dibagi dengan 4
– Mengkonversi setiap pembagi ke
dalam digit heksadesimalnya yang
sesuai
– Berikut ini tabel yang menunjukkan
representasi biner dari setiap digit
heksadesimal
Contoh: Biner ke Heksadesimal
Konversi: Heksadesimal ke Biner

• Metode:
– Mengkonversi bilangan heksadesimal ke biner hanya kebalikan dari
apa yang telah diberikan sebelumnya.
– Mengkonversi setiap digit heksadesimal ke dalam representasi biner
nya (diberikan pada tabel) dan menggabungnya.
– Hasil merupakan representasi biner.
Contoh: Heksadesimal ke Biner
kesimpulan

• Komponen dasar dari komputer


– Hardware
– Software
• Ikhtisar Bahasa Pemrograman Komputer
– Apakah bahasa pemrograman itu?
– Kategori bahasa pemrograman
• Alur Kerja Pembuatan Program
– 1. Definisi Permasalahan
– 2. Analisa Permasalahan
– 3. Desain Algoritma dan representasi (bhs. manusia, Flowchart, Pseudocode)
– 4. Coding dan Debugging
kesimpulan

• Tipe-tipe Error
– Compile time error/syntax error
– Runtime error
• Sistem Bilangan
– Desimal, Heksadesimal, Biner, Oktal
– Konversi
Quiz – 15 menit
Dari permasalahan–permasalahan di bawah ini, susunlah sebuah algoritma
untuk menyelesaikannya. Anda dapat menyusunnya dengan menggunakan
pseudocode ataupun flowchart.
• Memasak Roti
• Menggunakan Komputer di Laboratorium
• Menghitung rata–rata dari 3 buah bilangan

Konversikan bilangan – bilangan berikut ini :


• 198010 ke sistem bilangan Biner, Heksadesimal dan Oktal
• 10010011012 ke sistem bilangan Desimal, Heksadesimal dan Oktal
• 768 ke sistem bilangan Biner, Heksadesimal dan Desimal
• 43F16 ke sistem bilangan Biner, Desimal dan Oktal

Anda mungkin juga menyukai