1. 1 | H a l
Operator dan Algoritma
Dosen: Ir. Sihar, MT.
Program studi T. Informatika, FTI
Bandung 2016
Referensi:
[1] Gilmore, C.M. Microprocessors: Principles and Applications. McGraw-Hill. 1995.
[2] Mano, M. Computer System Architecture (3rd Edition). Prentice Hall. 1992.
[3] Simamora, S.N.M.P. Modul Belajar Praktis Algoritma dan Pemrograman. Penerbit Deepublish,
Yogyakarta. 2016. ISBN: 978-602-401-318-9.
[4] Simamora, S.N.M.P., "WLAN Implementation in High-floor Indoor Office Building for
Communication Successfull Solution", Proceeding, International Conference on Open Source for
Higher Education (ICOSic) March 15th, 2010, Sebelas Maret University (UNS), Solo, ISBN:
979-498-560-0.
[5] Tanenbaum, A. S. Structured Computer Organization, 5th edition. Prentice Hall International
Editions. 2005.
[6] Zaks, R. From Chips to Systems: An Introduction to Microprocessors. Longman Higher
Education. 1979.
Soal
Selesaikan persoalan berikut ini:
1. (0101)16 = ()2;
Solusi:
Algoritma Matematika Informasi
Tahap-1: transformasikan HEX ke DEC
(0101)16 = 0x101 = DEC( ... )
= (1)(16)2 + (0)(16)1 + (1)(16)0
= 256 + 0 + 1
= DEC(257)
Tahap-2: transformasikan DEC ke BIN
DEC(257) = ( ... )2
257 2 = 128 sisa 1
128 2 = 64 sisa 0
64 2 = 32 sisa 0
32 2 = 16 sisa 0
16 2 = 8 sisa 0
8 2 = 4 sisa 0
4 2 = 2 sisa 0
2 2 = 1 sisa 0
1 2 = 0 sisa 1
2. 2 | H a l
dikonstruksikan kembali: (1 0000 0001)2;
2. Apabila nilai tersebut ditampungkan pada var: x1, lalu di-OR-kan dengan 0x0E,
selanjutnya di-AND-kan dengan 012. Gunakan Algoritma Matematika Informasi untuk
mendapatkan nilai x1 terbaru (termutahir).
Solusi:
Konstruksi-algoritma
x1DEC(257);
x1x10x0E;
x1x1012;
tampilkan x1;
Algoritma Matematika Informasi
Transformasikan setiap operand-data pada masing-masing expression pada nilai BIN oleh
sebab Operator Logic (Boolean) hanya dapat bekerja pada data numerik dalam bit (binary-
digit).
0x0E = ( ... )2
Tahap-1: transformasikan HEX ke DEC
0x0E = ( ... )10
= (0)(16)1 + (E)(16)0 ; E = DEC(14);
= 0 + 14
= DEC(14)
Tahap-2: transformasikan DEC ke BIN
DEC(14) = ()2
14 2 = 7 sisa 0
7 2 = 3 sisa 1
3 2 = 1 sisa 1
1 2 = 0 sisa 1
dikonstruksikan menjadi (1110)2;
012 = ( ... )2
Tahap-1: transformasikan OCT ke DEC
012 = ( ... )10
= (1)(8)1 + (2)(8)0 ; E = DEC(14);
= 8 + 2
= DEC(10)
Tahap-2: transformasikan DEC ke BIN
DEC(10) = ()2
10 2 = 5 sisa 0
5 2 = 2 sisa 1
2 2 = 1 sisa 0
1 2 = 0 sisa 1
dikonstruksikan menjadi (1010)2;
3. 3 | H a l
DEC(257) : 1 0000 0001
0x0E : 0 0000 1110
DEC(271) 1 0000 1111
021 : 0 0000 1010
DEC(10) : 0 0000 1010
maka didapatkan bahwa nilai x1 terbaru (termutahir) adalah DEC(10).
3. Tuliskan algoritma dan pemrograman C++ untuk persoalan No. 2 tersebut.
Solusi:
Berdasar konstruksi-algoritma sebelumnya, maka
Algoritma dan pemrograman C++ dituliskan berikut ini:
#include<iostream.h>
void main()
{
int x1=0x101;
x1=x1|0x0E;
x1=x1&012;
cout << x1;
}
Tampilan jalannya program: