2. 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 Arsitektur
Komputer”, Dept. Sistem Komputer, Fak. Teknik. Institut
Teknologi Harapan Bangsa. Bandung.
7. Zaks, R. (1979). From Chips to Systems: An Introduction to
Microprocessors. Longman Higher Education.
3. Dalam sistem komputer/komputer,
sebuah bahasa pemrograman atau
script berperan untuk mengakumulasi
sejumlah instruksi oleh end-user
(pengguna tools)
Sejumlah instruksi tersebut
direpresentasikan dalam syntax
(sintaks pemrograman), code (kode)
dan rules/algorithm (aturan dan tata-
cara prosedur pemrosesannya) agar
sebuah pemrosesan tersebut dapat
berjalan sesuai dengan
keinginan/kebutuhan
Keinginan/kebutuhan yang
dimaksud adalah suatu
solusi dalam penyelesaian
sebuah persoalan yang
dikemukakan
4. Algoritma (algorithm) adalah cara dan tata-
laksana dalam penyelesaian suatu problems
(persoalan/permasalahan) yang dilakukan secara
konstruktif, terstruktur dan metodologis sehingga
solusi dapat dibangun
Algoritma dapat diterapkan di berbagai bidang baik secara
langsung seperti aplikasi software/hardware, cara analitik
(mathematic), dan science; maupun yang tidak secara
langsung seperti sosial, ekonomi, hukum, dan
pertahanan/keamanan. Terapan algoritma dalam aplikasi
software/hardware umumnya dan pastinya
direpresentasikan dalam bentuk pemrograman
(programming)
5. Agar sebuah algoritma dapat direpresentasikan dalam
bentuk pemrograman maka dibutuhkan penulisan kode
(code) yang disebut sebagai bahasa (language); bahasa
bisa 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 sistem
komputer/komputer)
Perbedaan antara bahasa pemrograman dan script terletak
pada platform dimana source-code diterjemahkan, panjang
coding, jenis translator, dan bentuk syntax pemrograman.
Platform adalah lingkungan-kerja dimana coding
diproses/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
6. Yang dimaksud source-code adalah
uraian coding yang dituliskan dalam
bahasa pemrograman atau script
tertentu yang dilakukan oleh seorang
pemrogram (programmer)
Sebuah file yang berkaitan dengan source-code
diidentifikasi dengan extention yakni tiga atau
empat karakter di belakang titik (dot) setelah
nama file tersebut
Sebuah algoritma dan pemrograman, sebelum
disusun dan dituliskan dibutuhkan suatu tahapan
awal yang bersifat buffering dan modeling agar
suatu persoalan dapat dibangun dengan terstruktur.
Tahapan dalam buffering dan modeling suatu
persoalan yang akan diselesaikan dalam bentuk
solusi ini disebut dengan konstruksi-algoritma
7. Oleh sebab itu konstruksi-algoritma dapat
didefinisikan sebagai suatu tahapan awal yang
disusun dalam bentuk aksioma matematika
atau cara analitik dari solusi pada suatu
persoalan yang tersajikan
Penyusunan konstruksi-algoritma bersifat optional dan
tidak wajib sehingga tidak bersifat absolut disusun saat
sebuah algoritma dan pemrograman akan dituliskan.
Konstruksi-algoritma hanya berperan untuk mendukung
dalam membantu penyusunan suatu algoritma dan
pemrograman
Agar penyusunan algoritma sekaligus dapat tersajikan secara visual, maka
algoritma selalu dikombinasikan langsung dengan pemrograman
8. Namun pemrograman sendiri berbeda dengan
algoritma, oleh sebab dengan adanya tools (alat
bantu) berupa framework (dalam bentuk software
aplikasi) telah membantu seorang pemrograman
untuk melewati tahapan algorithmic saat suatu block
proses akan di-coding
Misalkan dijumpai pada visual-programming seperti
Visual Basic, Borland C++ Builder, Net Beans atau
aplikasi pemrograman visual lain yang sejenis
Data dan informasi yang di-input-kan ke dalam
sistem komputer/komputer modern akan diproses
secara matematika bahkan sekalipun hanya untuk
menampilkan sebuah karakter/kata/string,
menekan tombol keyboard/keypad bahkan
menampilkan nilai-luaran dalam bentuk
multimedia
9. Oleh sebab itu dasar pemrosesan dalam sistem
komputer/komputer modern adalah Algoritma
Matematika Informasi. Dasar kerja dan pemrosesan
Algoritma 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 dasar
Algoritma 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. Klasifikasi
kode program yang dikenal dalam sistem komputer/komputer modern yaitu: HTML,
script, programming-language, dan instruction-command (perintah-perintah terminal
komputer)
10. Beberapa jenis translator yang
umum digunakan dan dikenal
dalam sistem
komputer/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)
11. “Selamat Datang”
#include<iostream.h>
void main()
{
cout << "Selamat Datang";
}
<script language=JavaScript>
document.write("Selamat Datang");
</script>
Algoritma Matematika Informasi juga mencakup pada
bidang 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 berbasis
pada platform dalam framework grafis atau terminal, dan cenderung baris kode
lebih panjang; sedangkan script adalah suatu kode program yang dijalankan
berbasis pada platform dalam framework HTML atau web, dan cenderung baris
kode lebih pendek
12. 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); maka
Z)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:
13. 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 Informasi
DEC(15) = 001 111
DEC(51) = 110 011
------------------------ ⊕
DEC(60) ←111 100
DEC(15) = 001 111
------------------------- +
DEC(63) ← 111 111
Algoritma dan pemrograman C++: Tampilan jalannya program:
14. Kasus: Tuliskan algoritma Matematika Informasi serta algoritma dan pemrograman
C++ untuk kasus berikut:
0xB3B3 = ( ... )10
Sertakan dengan tampilan jalannya program.
Solusi: Algoritma Matematika Informasi, ditunjukkan berikut ini
0xB3B3 = 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 range
lebih lebar dibandingkan int, yakni: -2147483648 s.d
+2147483647 ; bandingkan int dengan range: -32768 s.d
+32767
15. 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:
16. 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 terdeklarasi
A←x;
A←(A+5);
A←(A*1.5);
A←(A-10);
Misalkan, x=35, maka A=50
Algoritma dan pemrograman C++:
Tampilan jalannya program: