algoritma matematika informasi

16
Algoritma Matematika Informasi Dosen: Ir. Sihar, MT. Dept. Sistem Informasi, Fak. Teknik Bandung – 2002 IF207 Organisasi Komputer (2 sks)

Upload: staffpengajar

Post on 08-Jan-2017

58 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Algoritma Matematika Informasi

Algoritma Matematika Informasi

Dosen: Ir. Sihar, MT.Dept. Sistem Informasi, Fak. Teknik

Bandung – 2002

IF‐207 Organisasi Komputer (2 sks)

Page 2: Algoritma Matematika Informasi

Daftar Pustaka

1. Gilmore, C.M. (1995). Microprocessors: Principles and Applications. McGraw-Hill.

2. Mano, M. (1992). Computer System Architecture (3rd Edition). Prentice Hall.

3. Prince, B. (1997). Semiconductor Memories. New York:Wiley.4. Siewiorek, D., Bell, C., Newell, A. (1982). Computer Structures:

Principles and Examples. New York: McGraw-Hill.5. Simamora, S.N.M.P. (2002). “Diktat Kuliah SK-100 Dasar

Komputer dan Pemrograman”, Dept. Sistem Komputer, Fak. Teknik. Institut Teknologi Harapan Bangsa. Bandung.

6. Simamora, S.N.M.P. (2002). “Diktat Kuliah SK-303 ArsitekturKomputer”, Dept. Sistem Komputer, Fak. Teknik. InstitutTeknologi Harapan Bangsa. Bandung.

7. Zaks, R. (1979). From Chips to Systems: An Introduction to Microprocessors. Longman Higher Education.

Page 3: Algoritma Matematika Informasi

Dalam sistem komputer/komputer, sebuah bahasa pemrograman atau

script berperan untuk mengakumulasisejumlah instruksi oleh end-user

(pengguna tools)

Sejumlah instruksi tersebutdirepresentasikan dalam syntax

(sintaks pemrograman), code (kode) dan rules/algorithm (aturan dan tata-cara prosedur pemrosesannya) agar sebuah pemrosesan tersebut dapat

berjalan sesuai dengankeinginan/kebutuhan

Keinginan/kebutuhan yang dimaksud adalah suatusolusi dalam penyelesaiansebuah persoalan yang dikemukakan

Page 4: Algoritma Matematika Informasi

Algoritma (algorithm) adalah cara dan tata-laksana dalam penyelesaian suatu problems

(persoalan/permasalahan) yang dilakukan secarakonstruktif, terstruktur dan metodologis sehingga

solusi dapat dibangun

Algoritma dapat diterapkan di berbagai bidang baik secaralangsung seperti aplikasi software/hardware, cara analitik

(mathematic), dan science; maupun yang tidak secaralangsung seperti sosial, ekonomi, hukum, dan

pertahanan/keamanan. Terapan algoritma dalam aplikasisoftware/hardware umumnya dan pastinya

direpresentasikan dalam bentuk pemrograman(programming)

Page 5: Algoritma Matematika Informasi

Agar sebuah algoritma dapat direpresentasikan dalambentuk pemrograman maka dibutuhkan penulisan kode

(code) yang disebut sebagai bahasa (language); bahasabisa dalam bentuk bahasa pemrograman (programming-

laguange) atau dalam bentuk script

Sebuah bahasa dibutuhkan sebagai pen-jembatan-an (bridging) atau mediasi antara end-user (human) ke

lapisan (layers) machine (yakni sistemkomputer/komputer)

Perbedaan antara bahasa pemrograman dan script terletakpada platform dimana source-code diterjemahkan, panjangcoding, jenis translator, dan bentuk syntax pemrograman.

Platform adalah lingkungan-kerja dimana codingdiproses/diterjemahkan/dijalankan, sedangkan translator

adalah aplikasi software yang digunakan untuk men-generate (menerjemahkan) source-code tersebut ke dalam

bentuk aplikasi yang dapat dijalankan secara visual

Page 6: Algoritma Matematika Informasi

Yang dimaksud source-code adalahuraian coding yang dituliskan dalam

bahasa pemrograman atau scripttertentu yang dilakukan oleh seorang

pemrogram (programmer)

Sebuah file yang berkaitan dengan source-codediidentifikasi dengan extention yakni tiga atauempat karakter di belakang titik (dot) setelah

nama file tersebut

Sebuah algoritma dan pemrograman, sebelumdisusun dan dituliskan dibutuhkan suatu tahapanawal yang bersifat buffering dan modeling agar

suatu persoalan dapat dibangun dengan terstruktur. Tahapan dalam buffering dan modeling suatu

persoalan yang akan diselesaikan dalam bentuksolusi ini disebut dengan konstruksi-algoritma

Page 7: Algoritma Matematika Informasi

Oleh sebab itu konstruksi-algoritma dapatdidefinisikan sebagai suatu tahapan awal yang

disusun dalam bentuk aksioma matematikaatau cara analitik dari solusi pada suatu

persoalan yang tersajikan

Penyusunan konstruksi-algoritma bersifat optional dantidak wajib sehingga tidak bersifat absolut disusun saatsebuah algoritma dan pemrograman akan dituliskan.

Konstruksi-algoritma hanya berperan untuk mendukungdalam membantu penyusunan suatu algoritma dan

pemrograman

Agar penyusunan algoritma sekaligus dapat tersajikan secara visual, makaalgoritma selalu dikombinasikan langsung dengan pemrograman

Page 8: Algoritma Matematika Informasi

Namun pemrograman sendiri berbeda denganalgoritma, oleh sebab dengan adanya tools (alatbantu) berupa framework (dalam bentuk softwareaplikasi) telah membantu seorang pemrograman

untuk melewati tahapan algorithmic saat suatu blockproses akan di-coding

Misalkan dijumpai pada visual-programming sepertiVisual Basic, Borland C++ Builder, Net Beans atau

aplikasi pemrograman visual lain yang sejenis

Data dan informasi yang di-input-kan ke dalamsistem komputer/komputer modern akan diprosessecara matematika bahkan sekalipun hanya untuk

menampilkan sebuah karakter/kata/string, menekan tombol keyboard/keypad bahkan

menampilkan nilai-luaran dalam bentukmultimedia

Page 9: Algoritma Matematika Informasi

Oleh sebab itu dasar pemrosesan dalam sistemkomputer/komputer modern adalah Algoritma

Matematika Informasi. Dasar kerja dan pemrosesanAlgoritma Matematika Informasi adalah Operasi

Arithmatika dan Operasi Logika (Aljabar Boolean, Hukum De Morgan, Logika Matematika dan Teori

Himpunan)

Nilai-masukan berupa data numerik dan/atau non-numerik yang diformulasikan dalam bahasa pemrograman atau script yang di-generate

atau ditranslasikan oleh translator untuk nanti diproses menggunakan dasarAlgoritma Matematika Informasi; yang akan dikeluarkan melalui media

output-devices, baik melalui display, printer, plotter, speaker bahkan coder(buzzer, alarm, atau sirene)

Seperti sebelumnya telah dijelaskan bahwa sebuah translator (translation-generator) adalah suatu mesin komputasi untuk menerjemahkan dan menjalankan suatu kode

program yang ditulis menggunakan script atau bahasa pemrograman. Klasifikasikode program yang dikenal dalam sistem komputer/komputer modern yaitu: HTML, script, programming-language, dan instruction-command (perintah-perintah terminal

komputer)

Page 10: Algoritma Matematika Informasi

Beberapa jenis translator yang umum digunakan dan dikenal

dalam sistemkomputer/komputer modern

Assembler: TASM (Turbo Assembler) 2.0, MASM (Macro Assembler) 6.0

Compiler: Turbo C (TC 3.0), Turbo Pascal

Interpreter: Turbo BASIC, Turbo Prolog, QBASIC, JavaScript virtual-machine, script-generator

Hybrid compiler/interpreter: JDK 1.7 (Java Development Kit), JRE (Java Runtime Environment)

Page 11: Algoritma Matematika Informasi

“Selamat Datang”

#include<iostream.h>void main(){cout << "Selamat Datang";

}

<script language=JavaScript>document.write("Selamat Datang");

</script>

Algoritma Matematika Informasi juga mencakup padabidang organisasi komputer dan arsitektur komputer

Perbedaan mendasar antara programming-language (bahasa pemrograman) dan script dapat didefinisikan dan dijelaskan sebagai berikut:Bahasa Pemrograman adalah suatu kode program yang dijalankan berbasispada platform dalam framework grafis atau terminal, dan cenderung baris kodelebih panjang; sedangkan script adalah suatu kode program yang dijalankanberbasis pada platform dalam framework HTML atau web, dan cenderung bariskode lebih pendek

Page 12: Algoritma Matematika Informasi

Kasus: Jika dinyatakan bahwa (2.1)3 = (2.1)*(2.1)*(2.1), maka tulislah algoritma dan pemrograman C++ untuk mendapatkan Z, jika diketahui statement berikut:

Solusi:

Konstruksi-algoritma

Algoritma dan pemrograman C++:

jika (2.1)3 = (2.1)∗(2.1)∗(2.1); makaZ)5 = (Z)∗(Z)∗(Z)∗(Z)∗(Z);

Z ← Z5 + 5;dimana, nilai Z didapatkan dari input-value dari end-user dan Z ∈ Bilangan Pecahan.Sertakan dengan tampilan jalannya program.

Tampilan jalannya program:

Page 13: Algoritma Matematika Informasi

Kasus: Tulislah algoritma dan pemrograman C++ untuk mendapatkan zL, jika A←DEC(15) dan B←DEC(51) untuk statement pada pengerjaan operator Boolean berikut: zL ← (A⊕B)+A;

Sertakan dengan tampilan jalannya program.Berapakah isi zL?

Solusi: Algoritma Matematika InformasiDEC(15) = 001 111DEC(51) = 110 011------------------------ ⊕DEC(60) ←111 100DEC(15) = 001 111------------------------- +DEC(63) ← 111 111

Algoritma dan pemrograman C++: Tampilan jalannya program:

Page 14: Algoritma Matematika Informasi

Kasus: Tuliskan algoritma Matematika Informasi serta algoritma dan pemrograman C++ untuk kasus berikut:0xB3B3 = ( ... )10Sertakan dengan tampilan jalannya program.

Solusi: Algoritma Matematika Informasi, ditunjukkan berikut ini0xB3B3 = b.163 + 3.162 + b.161 + 3.160

= (11)(4096) + (3)(256) + (11)(16) + (3)(1)= DEC(46003)

Algoritma dan pemrograman C++: Tampilan jalannya program:

Digunakan tipe data long int, oleh sebab memiliki rangelebih lebar dibandingkan int, yakni: -2147483648 s.d +2147483647 ; bandingkan int dengan range: -32768 s.d +32767

Page 15: Algoritma Matematika Informasi

Kasus: Tuliskanlah algoritma Matematika Informasi untuk statement pengoperasian operator Boolean berikut ini:zK←(15≤ 23) + (14 ≥ 14) • (6 ≠ 6);Perhatikan nilai zK, tulislah algoritma dan pemrograman C++ untuk kasus dimana, jika zK bernilai 1 maka tampilkan statement: “Nilai zK bernilai TRUE”, selain itu tampilkan statement: “Nilai zK bernilai FALSE”.Sertakan tampilan jalannya program.

Solusi: Algoritma Matematika Informasi ditunjukkan berikut ini,zK←(15≤ 23) + (14 ≥ 14) • (6 ≠ 6);

FTT

F

+T

T

Algoritma dan pemrograman C++:

Tampilan jalannya program:

Page 16: Algoritma Matematika Informasi

Kasus: Jika diketahui suatu algoritma berikut: suatu bilangan ditampungkan ke suatu variabel lalu ditambahkan dengan 5, selanjutnya variabel tsb dikalikan dengan 1.5 dan terakhir dikurangkan dengan 10. Jika bilangan tsb adalah kelompok bilangan: 15 s.d 35, tulislah algoritma dan pemrograman C++ untuk menampilkan isi dari operand-hasil apabila bilangan tsb diberi dua pilihan, yakni: hasil deklarasi atau input-value oleh end-user. Sertakan tampilan jalannya program.

Solusi: Konstruksi-algoritmanya dapat dituliskan berikut,Misalkan var: a, maka a←x; dimana x bilangan yang di-input-kan atau terdeklarasiA←x;A←(A+5);A←(A*1.5);A←(A-10);Misalkan, x=35, maka A=50

Algoritma dan pemrograman C++:

Tampilan jalannya program: