algoritma matematika informasi
TRANSCRIPT
Algoritma Matematika Informasi
Dosen: Ir. Sihar, MT.Dept. Sistem Informasi, Fak. Teknik
Bandung – 2002
IF‐207 Organisasi Komputer (2 sks)
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.
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
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)
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
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
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
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
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)
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)
“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
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:
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:
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
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:
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: