bab 1 pendahuluan

15
STMIK ASIA MALANG 1 BAB BAB BAB BAB PENDAHULUAN PENDAHULUAN PENDAHULUAN PENDAHULUAN 1.1. Sistem Komputer Gambar 1.1 Skema Blok Sistem Komputer Empat komponen pokok sistem komputer: 1. Pemroses 2. Memori Utama 3. Perangkat masukan dan keluaran 4. Interkoneksi antarkomponen PEMROSES Pemroses disebut CPU, berfungsi mengendalikan operasi komputer dan melakukan pengolahan data. Berikut ini adalah contoh cari processor: 1

Upload: bambangtriw

Post on 26-Dec-2015

17 views

Category:

Documents


5 download

DESCRIPTION

Materi Pemrograman Berorientasi Object

TRANSCRIPT

STMIK ASIA MALANG

1

BABBABBABBAB

PENDAHULUANPENDAHULUANPENDAHULUANPENDAHULUAN 1.1. Sistem Komputer

Gambar 1.1 Skema Blok Sistem Komputer

Empat komponen pokok sistem komputer:

1. Pemroses

2. Memori Utama

3. Perangkat masukan dan keluaran

4. Interkoneksi antarkomponen

PEMROSES

Pemroses disebut CPU, berfungsi mengendalikan operasi komputer dan melakukan

pengolahan data. Berikut ini adalah contoh cari processor:

1111

STMIK ASIA MALANG

2

Gambar 1.2 Processor ‘AMD’ dan ‘Intel’

Pemroses melakukan kerja dengan langkah sbb:

1. Mengambil instruksi yang dikodekan secara biner dari memori utama

2. Men-dekode instruksi menjadi proses-proses sederhana

3. Melaksanakan proses-proses tersebut

Operasi-operasi pada pemroses dikategorikan menjadi:

1. Operasi aritmetika

Penambahan, pengurangan, perkalian, pembagian dsb

2. Operasi logika

OR, AND, X-OR, inversi dsb

3. Operasi pengendalian

Operasi percabangan, lompat dsb

Pemroses terdiri dari tiga komponen, yaitu:

1. CU (Control Unit)

Berfungsi mengendalikan operasi yang dilaksanakan sistem komputer

2. ALU (Aritmetic Logic Unit)

STMIK ASIA MALANG 3

Berfungsi melakukan operasi aritmatika dan logika

3. Register

Merupakan memori yang sangat cepat yang berfungsi sebagai

tempat operan-operan dari operasi yang akan dilakukan oleh pemroses.

Register:

• Lokasi memori yang sangat khusus terkonstruksi dari Flip-Flop

• Didesain u/ menampung data, data tsb. dapat diakses dan diakses dalam

berbagai operasi dgn kecepatan tinggi.

o U/ prosessor 8088/8086, 80188/80186, 80286 � register 16 bit

o U/ prosessor 80386/80486/80586/Pentium � register 32 bit

o Optional u/ general purpose register � not independent 8 bit

registers u/ High Order Byte dan Low Order Byte

• Jenis-Jenis Register:

o General-purpose registers (data registers):

– 16 bit : AX, BX, CX, DX

– 8 bit : AH, AL, BH, BL, CH, CL, DH, DL

o Segment registers : CS, DS, SS, ES

o Index register: SI, DI, IP

o Pointer register: IP, SP

o Flags registers: Overflow, Direction, Interrupt, Trap, Sign, Zero,

Auxiliary Carry, Parity, Carry

– 16 bit, tetapi hanya 9 bit yang digunakan

o Register untuk alamat dan buffer

– MAR (Memory Address register)

– MBR (memory bufer register)

– I/O AR (I/O Address Register)

– I/O BR (I/O Buffer Register)

o Register untuk eksekusi instruksi

– PC (Program Counter)

– IR (Instruction Register)

MEMORI

Memori berfungsi untuk menyimpan data dan program. Hirarki memori

berdasarkan kecepatan akses, seperti tabel berikut ini:

STMIK ASIA MALANG 4

Register

Chace memory

Main memory

Disk memory

Magnetic Disk

Tercepat

Terlambat Magnetic Tape Optical disk

Berikut ini contoh dari memori utama:

Gambar 1.3 RAM

Gambar 1.4 Contoh Secondary Storage

STMIK ASIA MALANG 5

PERANGKAT I/O

Perangkat masukan/keluaran digunakan sistem komputer untuk berinteraksi

dengan lingkungan luar, baik ke pemakai ataupun lingkungan secara umum.

Perangkat masukan/keluaran terdiri dari dua bagian, yaitu:

1. Komponen mekanis, yaitu perangkat itu sendiri

2. Komponen elektronis, yaitu pengendali perangkat berupa chip controller.

Perangkat Input :Terdiri dari semua rangkaian yg diperlukan agar data dan

program bisa dimasukan dalam komputer

Termasuk :

� Keyboard

Gambar 1.5 Keyboard

� Alat pembaca optis

Contoh : CD ROOM

� Alat pembaca magnetic

Contoh : Disk Drive

� Alat input pengenal suara

Gambar 1.6 Alat Pengenal Suara

STMIK ASIA MALANG 6

� Alat penunjuk

Contoh :

� Mouse, trackball dan joystick

Gambar 1.7. Mouse dan Track Ball

� Touch screen

� Light Pen

� Tablet digitzer

Gambar 1.8. Tablet Digitzer

� Pen Computer

� Scanner

STMIK ASIA MALANG 7

Gambar 1.9. Scanner

Perangkat Output adalah perangkat untuk menyampaikan hasil proses termasuk

tampilan, cetakan, suara dan grafik

Contoh :

Gambar 1.10. Output Device

INTERKONEKSI ANTARKOMPONEN

Disebut BUS dan interkoneksi ini berkaitan dengan tatacara hubungan

antarkomponen-komponen sistem komputer.

Bus terdiri dari tiga macam, yaitu:

1. Bus alamat (addres bus)

Untuk memberikan alamat dari memori atau port yang hendak diakses. Bus

alamat berisi 16, 20, 24 jalur sinyal paralel atau lebih.

2. Bus data (data bus)

Untuk membaca dan mengirim data dari/ke memori atau port. Bus data

berisi 8,16, 32 jalur sinyal paralel atau lebih.

3. Bus kendali (control bus)

Sinyal bus kendali antara lain:

STMIK ASIA MALANG 8

• Memory Read

• Memory Write

• I/O read

• I/O Write

Sistem interkoneksi antarkomponen (Bus) yang populer antara lain: ISA, EISA,

MCA, VESA, PCI dan AGP.

1.2. Bahasa Pemrograman

Bahasa Pemrograman merupakan software yang khusus digunakan untuk

membuat program computer, apakah itu sistem operasi, program paket dan lain-

lain. Bahasa Komputer juga merupakan sarana komunikasi yang menjembatani

hubungan antara manusia dengan komputer sebagai mesin. Setiap bahasa

pemrograman harus memiliki sejumlah perintah. Pemakaian bahasa komputer

selalu berhubungan dengan sintaksis, semantik dan kebenaran logika. Sintaksis adalah

aturan penulisan bahasa tersebut. Semantik adalah arti atau maksud yang

terkandung dalam statement tersebut. Kebenaran logika berhubungan dengan benar

tidaknya urutan statemen.

Bahasa pemrograman memungkinkan programmer untuk mengembangkan

serangkaian perintah yang membentuk program computer. Banyak bahasa

pemrograman yang berbeda telah dikembangkan, dengan masing-masing memiliki

kosakata, tata bahasa, dan penggunaan yang berbeda-beda.

Dari perkembangan perangkat lunak, kita bisa membayangkan bagaimana

perkembangan interaksi manusia dengan perangkat lunak. Bentuk paling primitif

dari perangkat lunak, menggunakan aljabar Boolean, yang di representasikan

sebagai binary digit (bit), yaitu 1 (benar / on) atau 0 (salah / off), cara ini sudah

pasti sangat menyulitkan, sehingga orang mulai mengelompokkan bit tersebut

menjadi nible (4 bit), byte (8 bit), word (2 byte), double word (32 bit).

Dalam bahasa komputer ada 2 macam bahasa yaitu bahasa pemrograman

tingkat tinggi dan bahasa pemrograman tingkat rendah. Bahasa Pemrograman

Tingkat Tinggi (BTT) merupakan bahasa pemrograman yang lebih dekat dekat

dengan pemakai, artinya lebih mudah dimengerti, lebih mudah dipelajari serta

memakai bahasa sehari-hari. Contoh: Bahasa Pemrograman Turbo Pascal.

Bahasa Pemrograman Tingkat Rendah (BTR) merupakan bahasa pemrograman

yang lebih dekat dekat dengan mesin, artinya mesin bisa langsung mengerti

perintah – perintah yang diberikan . Contoh: Bahasa Pemrograman Assembly.

STMIK ASIA MALANG 9

Bahasa Generasi Pertama

Pada awalnya, program yang digunakan untuk menjalankan komputer

masih menggunakan bahasa mesin (Machine Language) atau dikenal dengan

generasi pertama (First Generation Language). Contohnya perintah

1101011010010010 diartikan sebagai perintah ADD, sedangkan urutan selanjutnya

10010010 bahasa mesin benar-benar menggambarkan penambahan secara digital

yang harus dilakukan microprocessor.

Namun penggunaan bahasa mesin ini masih membutuhkan suatu alat untuk

menerjemahkan bahasanya atau disebut juga dengan interpreter, sehingga

kecepatan eksekusinya masih sangat lamban karena sebelum melaksanakan

eksekusi program terlebih dahulu harus diterjemahkan. Bahasa mesin inilah yang

disebut sebagai bahasa tingkat rendah (Low Level Language).

Bahasa Generasi Kedua

Selain bahasa mesin, masih ada bahasa rakitan (assembly language) atau

dikenal dengan bahasa generasi kedua (second generation language). Bahasa

rakitan hampir mirip dengan bahasa mesin, hanya penulisannya sudah berupa

sesuatu yang dapat dibaca, misalnya perintah ADD 52H.

Bahasa rakitan disamakan dengan bahasa tingkat rendah karena masih

dibutuhkan suatu penerjemah untuk dapat menjalankan perintahnya atau dikenal

dengan Assembler Language.

Penggunaan bahasa tingkat rendah ini menimbulkan kesulitan bagi orang-

orang awam yang baru belajar komputer karena bahasa tingkat rendah merupakan

bahasa yang hanya dimengerti oleh komputer dan programnya itu sendiri, sehingga

orang-orang awam akan mengalami kesulitan untuk mengerti bahasanya.

Bahasa Generasi Ketiga

Untuk mengulangi masalah tersebut, dibuatlah masalah tingkat tinggi (high

level language), seperti COBOL, FORTRAN, PL/1, PASCAL, BASIC dan

ALGOL. Program ini disebut juga bahasa generasi ketiga (third generation

language)

STMIK ASIA MALANG 10

Pada generasi ini muncul istilah procedure oriented programming dan

problem oriented language. BASIC dan PASCAL disebut prosedur oriented karena

penulisan programnya sesuai dengan aturan yang ada. Sedangkan COBOL dan

FORTRAN termasuk kedalam problem oriented.

Sejalan dengan dibuatnya bahasa tingkat tinggi tersebut, dibuat pula sistem

opersi (operating system) untuk memudahkan orang menjalankan komputer

pertama kali. Sistem operasi yang dibuat dengan nama DOS (Disk Operating

System). Seperti PC–DOS, MS–DOS dan DR–DOS.

Bahasa Generasi Keempat

Bahasa generasi keempat (fourth generation language) atau 4GL dibuat

untuk memungkinkan seorang programmer atau pemakai menginstruksikan

komputer apa yang harus dilakukan. Bahasa generasi keempat tidak mementingkan

urutan instruksi program yang dibuat seperti pada bahasa generasi ketiga, yakni

pembuatan program yang tidak mengikuti prosedur yang berlaku atau non

procedural. Pembuatan bahasa generasi keempat ini ditujukan untuk memudahkan

pengguna pada proses pengambilan keputusan. Seperti kemudahan dalam

mempelajari dan menggunakan bahasa ini. Contoh bahasa generasi keempat antara

lain : FOCUS, RPG, MANTIS, MARK V, DYNAMO, dll.

Bahasa Berorientasi Objek

Bahasa yang berorientasi objek (Object Oriented Programming-OOP) seperti Visual

Basic, Borland Delphi, C++ dan Java juga dianggap sebagai bahasa generasi

kelima dan telah menjadi alat yang paling umum untuk pengembangan software.

Singkatnya, sementara kebanyakan bahasa pemrograman memisahkan berbagai

elemen data dari prosedur atau tindakan yang akan dilakukan atas mereka, bahasa

OOP menyatukan mereka bersama ke dalam objek. Jadi, sebuah objek terdiri dari

data dan tindakan yang akan dilakukan atas data tersebut. dapat berupa

serangkaian data mengenai

Bahasa yang berorientasi objek lebih mudah dan lebih efisien untuk memprogram

graphic-oriented user interface yang dibutuhkan oleh banyak aplikasi. Oleh sebab

itu, bahasa tersebut adalah bahasa pemrograman yang paling luas diterima untuk

pengembangan software saat ini.

STMIK ASIA MALANG 11

Bahasa Web

HTML, Java dan XML adalah tiga bahasa pemrograman yang merupakan alat

penting untuk membangun halaman web, situs web, dan aplikasi berbasis web

dengan multimedia

1.3. Flowchart

Beberapa langkah dalam proses pembuatan suatu program atau software :

1. Mendefinisikan masalah dan menganalisanya

Langkah awal yang harus dilakukan adalah mengidentifikasikan masalah

antara lain tujuan dari pembuatan program, parameter-parameter yang

digunakan, fasilitas apa saja yang akan disediakan oleh program. Kemudian

menentukan metode atau algoritma apa yang akan diterapkan untuk

menyelesaikan masalah tersebut dan terakhir menentukan bahasa program

yang digunakan untuk pembuatan program.

2. Merealisasikan dengan langkah-langkah berikut :

Gambar 1.11. Proses Pembuatan Program

Start

Desain

Algoritma & Flowchart

Menulis program

Test Kebenaran Program

Dokumentasi

Arsip

STMIK ASIA MALANG 12

Secara umum, struktur suatu program terdiri dari beberapa bagian yaitu :

1. Input

Bagian ini merupakan proses untuk memasukkan data ke komputer melalui

device yang ada misalnya keyboard, mouse, scanner dll. Program melakukan

proses membaca data yang akan diolah dari device tersebut.

2. Output

Bagian ini merupakan proses untuk menampilkan data yang telah diolah,

melaporkan hasil pegolahan data melalui device seperti monitor, printer dll.

Program melakukan proses mencetak data ke device tersebut.

3. Proses Pengolahan Data

Bagian ini merupakan proses mengolah data yang diinputkan dengan

nenerapkan metode-metode, teknik-teknik, algoritma-algoritma yang ada.

Proses ini menghasilkan data output yang akan dioutputkan kepada pengguna

program.

4. Penyimpanan Data

Bagian ini merupakan proses menyimpan data dalam memori atau device

penyimpanan data seperti disket, harddisk, CD dll.

Berikut ini adalah blok diagram struktur dari suatu program secara umum.

Gambar 1.12 Bok diagram struktur dari suatu program

Algoritma

Algoritma adalah urutan langkah-langkah logika yang menyatakan suatu tugas

dalam menyelesaikan suatu masalah atau problem.

Contoh : Buat algoritma untuk menentukan apakah suatu bilangan merupakan

bilangan ganjil atau bilangan genap.

Input Proses

Pengolahan Data Output

Memory

STMIK ASIA MALANG 13

Algoritmanya :

1. Bagi bilangan dengan bilangan 2

2. Hitung sisa hasil bagi pada langkah 1.

3. Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap

tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan

ganjil.

Flowchart

Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritma

dalam suatu program, yang menyatakan arah alur program tersebut.

Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu

flowchart :

Tabel 1.1. Simbol-Simbol Flowchart

SIMBOL NAMA FUNGSI

TERMINATOR Permulaan/akhir program

GARIS ALIR

(FLOW LINE) Arah aliran program

PREPARATION

Proses inisialisasi/pemberian

harga awal

PROSES

Proses perhitungan/proses

pengolahan data

INPUT/OUTPUT

DATA

Proses input/output data,

parameter, informasi

STMIK ASIA MALANG 14

PREDEFINED

PROCESS

(SUB PROGRAM)

Permulaan sub program/proses

menjalankan sub program

DECISION

Perbandingan pernyataan,

penyeleksian data yang

memberikan pilihan untuk

langkah selanjutnya

ON PAGE

CONNECTOR

Penghubung bagian-bagian

flowchart yang berada pada satu

halaman

OFF PAGE

CONNECTOR

Penghubung bagian-bagian

flowchart yang berada pada

halaman berbeda

Dari contoh algoritma di atas tentang menentukan apakah suatu bilangan adalah

bilangan ganjil atau bilangan genap, flowchart dari program adalah sebagai berikut :

Gambar 1.13. Contoh Flowchart

Y

T

Start

Input

Bilangan

Hitung sisa

bagi antara

bilangan

dengan 2

A

A

Apakah

Sisa = 0

Cetak Genap Cetak Ganjil

End

STMIK ASIA MALANG 15

1.4. Soal Latihan 1. Buatlah flowchart untuk mencetak n bilangan bulat positif yang pertama!

2. Buatlah flowchart untuk menjumlahkan n bilangan bulat postif yang pertama!

3. Buatlah flowchart untuk mencetak n bilangan ganjil yang pertama!

4. Buatlah flowchart untuk menjumlahkan n bilangan ganjil yang pertama!

5. Buat flowchart untuk menentukan apakah suatu bilangan merupakan bilangan

prima atau bukan!

6. Buat flowchart untuk mencetak N buah bilangan prima yang pertama!

7. Buat flowchart untuk menentukan jenis akar dari suatu persamaan kuadrat !

8. Buat flowchart untuk menghitung jumlah N suku dari deret aritmatika berikut :

Sn = 3 + 7 + 11 + …… + (4n-1)

9. Buat flowchart untuk menghitung nilai faktorial dari suatu bilangan !

10. Buat flowchart untuk mencetak pasangan nilai X dan Y dimana hubungan antara X

dan Y memenuhi persamaan Y = X3 – 2X +1 dan nilai x berubah dari –10 sampai

10 !