Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

11
MAKALAH PEMROGRAMAN KOMPUTER KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL OLEH NAMA : KESZYA WABANG JURUSAN : FISIKA SEMESTER : II

description

 

Transcript of Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

Page 1: Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

MAKALAH PEMROGRAMAN KOMPUTER

KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

OLEH

NAMA : KESZYA WABANG

JURUSAN : FISIKA

SEMESTER : II

FAKULTAS SAINS DAN TEKNIK

UNIVERSITAS NUSA CENDANA KUPANG

Page 2: Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

2012/2013

BAB 1

PENDAHULUAN

1.1. Latar Belakang

Pascal adalah bahasa tingkat tinggi (high level language) yang orientasinya pada segala tujuan, dirancang oleh Profesor Niklaus Wirth dari Technical University of Zurich, Switzerland. Nama Pascal diambil sebagai penghargaan terhadap Blaise Pascal, ahli matematik dan filosofer terkenal abad 17 dari Perancis.

Profesor Niklaus Wirth memperkenalkan kompiler bahasa Pascal pertama kali untuk komputer CDC 6000 (Control Data Corporation) yang dipublikasikan pada tahun 1971 dengan tujuan membantu mengajar program komputer secara sistematis, khususnya untuk memperkenalkan pemrograman terstruktur

Dalam waktu singkat, Pascal telah menjadi bahasa yang populer di kalangan pelajar universitas dan merupakan bahasa yang diajarkan di beberapa perguruan tinggi. Beberapa profesional komputer juga mulai beralih ke bahasa Pascal. Kenyataannya, Pascal merupakan bahasa yang paling cepat populer dibandingkan dengan bahasa-bahasa komputer tingkat tinggi yang lainnya.

Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K.Jensen dan Niklaus Wirth. Penerapan nyata dari standar Pascal banyak yang berbeda dengan seperti apa yang telah didefinisikan oleh K. Jensen dan Niklaus Wirth. Standar Pascal di Eropa didefinisiakn oleh ISO (International Standards Organization) dan di Amerika oleh kerjasama antara ANSI (American National Standar Institute) dengan IEEE (Intitute of Electrical and Electronic Engineer).

Beberapa versi dari Pascal yang telah beredar di pasaran, di antaranya UCSD pascal (University of California at San Diego Pascal), MS-Pascal (Microsoft Pascal), Apple Pascal, Turbo Pascal dan lain sebagainya. Sampai saat ini untuk komputer-komputer mikro dan personal, Turbo Pascal merupakan versi bahasa Pascal yang paling populer dan banyak digunakan. Kompiler Turbo Pascal banyak digemari, karena terutama bersifat interaktif, seperti interpreter saja layaknya. Selain itu Turbo Pascal mengikuti definisi dari standar Pascal seperti yang didefinisikan oleh K. Jensen dan Niklaus Wirth di Pascal User Manual dan Report. Turbo PASCAL adalah copyright dari Borland Inc. dan dapat digunakan pada sistem operasi PC-DOS, MS-DOS, CPM-86 dan CP/M-80.

Dalam makalah ini, akan dibahas suatu program dengan menggunakan bahasa Pascal, yaitu ‘Program Konversi Bilangan Desimal ke Bilangan Heksadesimal’. Secara manual, bilangan decimal (berbasis 10) dapat dikonversikan ke bilangan heksadesimal (berbasis 16) dengan cara membagi tahap demi tahap angka desimal dengan angka 16 sampai 0, lalu menyusun hasil bagi dari tiap tahap pembagian tersebut seperti dibawah ini. Harus diingat bahwa bilangan heksadesimal mempunyai susunan angka :

Heksadesimal -> 0 1 2 3 4 5 6 7 8 9 A B C D E F

Desimal -> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Page 3: Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

Program Konversi Bilangan Desimal ke Bilangan Heksadesimal dengan menggunakan bahasa Pascal ini, dapat memudahkan pengerjaan untuk mengkonversi bilangan decimal ke bilangan heksadesimal.

1.2. Rumusan Masalah

1. Bagaimana mengkonversi bilangan decimal ke bilangan heksadesimal secara manual?2. Bagaimana mengkonversi bilangan decimal ke bilangan heksadesimal dengan bahasa

pemrograman Turbo Pascal?

1.3. Tujuan1. Agar dapat diketahui cara mengkonversi bilangan decimal ke bilangan heksadesimal secara

manual.2. Agar dapat diketahui cara mengkonversi bilangan decimal ke bilangan heksadesimal dengan

bahasa pemrograman Turbo Pascal.

BAB II

Page 4: Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

PEMBAHASAN

2.1. Konversi bilangan decimal ke bilangan heksadesimal secara manual

Bilangan desimal tersusun atas 10 digit (berbasis 10) yaitu : 0,1,2,3,4,5,6,7,8,9, sedangkan bilangan heksadesimal tersusun atas 16 digit (berbasis 16) yaitu : 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. Perhatikan bahwa 10 digit pertama bilangan heksadesimal merupakan bilangan desimal. Dapat dikatakan bahwa bilangan desimal merupakan himpunan bagian dari bilangan heksadesimal.

Untuk melakukan pengubahan bilangan desimal ke heksadesimal adalah dengan membagikan tahap demi tahap angka desimal dengan angka 16 sebagai basis bilangan heksadesimal sampai 0. Berikut adalah pengerjaan konversinya secara manual :

6710 = …….16 ?

Pertama-tama 67/16 = 4, sisa 3

Lalu 4/16 = 0, sisa 4,

Dengan demikian dari hasil perhitungan didapatkan 6710 = 4316

9210 = …….16?

Pertama-tama 92/16 = 5, sisa 12 (ditulis C)

Lalu 5/16 = 0, sisa 5,

Dengan demikian dari hasil perhitungan didapatkan 9210 = 5C16

Page 5: Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

2.2. Konversi bilangan decimal ke bilangan heksadesimal dengan bahasa pemrograman Turbo Pascal

Berdasarkan pembahasan diatas telah diketahui cara mengkonversi bilangan decimal ke bilangan heksadesimal secara manual. Adapun program konversi bilangan decimal ke bilangan heksadesimal dengan bahasa pemrograman Turbo Pascal untuk memudahkan dalam mengkonversi.

Dalam membuat bahasa programnya, pertama-tama haruslah dibuka TPW 1.5 lalu klik menu file, pilih sub menu new.

Setelah terbuka lembar kerja baru, maka mulailah membuat bahasa Pascal untuk program konversi bilangan decimal ke bilangan heksadesimal. Bahasa programnya dapat dituliskan sebagai berikut :

Program Konversi_Bilangan;

Page 6: Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

Uses WinCrt;Vardes,desi : integer;Heks : String;

BeginWrite('Masukkan Suatu Bilangan Desimal:');Readln(des); desi:=des;repeatif (des mod 16 < 10) then Heks:=chr(48+ des mod 16)+Hekselse Heks:=chr(55+ des mod 16)+Heks;des:=des div 16;writeln(des:7,Heks:20);

until des=0;writeln('',desi,' (desimal) =',Heks,' (Heksadesimal)');

end.

Jika program ini di run, maka akan tampil hasilnya seperti berikut :

Atau

Dapat dilihat bahwa hasil perhitungan secara manual pada konversi angka decimal 67 dan 92 ke angka heksadesimalnya sama dengan konversi yang dilakukan dengan menggunakan program yang dibuat dengan bahasa pemrograman Turbo Pascal.di atas.

Berikut akan dijelaskan maksud dari bahasa program konversi bilangan decimal ke bilangan heksadesimal tersebut.

Pada line pertama, yaitu ‘Program Konversi_Bilangan;’ merupakan nama program dan tidak ada pengaruhnya dengan pengoperasian program, hanya sebatas pemberian nama.

Pada line kedua, ‘Uses WinCrt;’. Uses merupakan sintaks program yang digunakan untuk memanggil library atau *unit*. Crt / Wincrt adalah adalah salah satu library yang paling banyak digunakan didalam program Pascal. Dengan kata lain, untuk menjalankan program digunakan library WinCrt.

Page 7: Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

Line ketiga, ‘Var;’. Artinya dalam program ini digunakan juga variabel, yaitu berupa : line keempat ‘des,desi : integer;’. Variabel yang digunakan adalah des dan desi dengan tipe data integer. Tipe data ini merupakan nilai bilangan bulat, yang terdiri atas integer positif, integer negatif dan nol. Pada TURBO PASCAL jenis data ini di bagi atas beberapa bagian. Seperti dibawah ini :

Tipe Ukuran memori

(dalam byte)

Jangkauan nilai

BYTE 1 0..255

SHORTINT 1 -128..127

INTEGER 2 -32768..32767

WORD 2 0..65535

LONGINT 4 -2147483648..2147483647

Operator Integer terdiri atas : + , - , * , DIV dan MOD

Tipe data ini digunakan karena variabel des dan desi mempunyai nilai tertentu. Selain variabel-variabel tadi, adapula pada line kelima ‘Heks : String;’. Variabel Heks dengan tipe data string. Tipe data string merupakan urut-urutan dari karakter yang terletak di antara tanda petik tunggal. Nilai data string akan menenpati memori sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Bila panjang dari suatu string di dalam deklarasi variabel tidak disebutkan, maka dianggap panjangnya adalah 255 karakter. Karakter merupakan elemen terkecil di dalam Pascal. Karakter dapat berupa :

Huruf(A sampai Z, a sampai z) Angka(0 sampai 9) Simbol khusus : + - * / = < > [ ] , ( ) : ; ^ . @ { } $ # Spasi Karakter kontrol (karakter dengan nilai ASCII dibawah 32 misalnya Tab dan backspace) Karakter ASCII tidak standar PC (karakter ASCII antara 128 hingga 255)

Kemudian pada line keenam dimulai dengan ‘Begin’, lalu pada line ketujuh ‘Write('Masukkan Suatu Bilangan Desimal:');Readln(des);’. Saat menjalankan program, akan tertulis kalimat ‘masukkan suatu bilangan decimal’ dan ketika user telah memasukkan suatu anggka decimal, maka angka tersebut akan terbaca sebagai variabel des tadi.

Pada line kedelapan, ‘desi:=des;’. Artinya, angka decimal yang dimasukkan user yang terbaca sebagai variabel des tersebut, tersimpan di variabel desi. Pada line kesembilan,

Page 8: Makalah KONVERSI BILANGAN DESIMAL KE BILANGAN HEKSADESIMAL

‘repeat’. Repeat merupakan struktur pengulangan yang akan diikuti dengan perintah lalu diikuti lagi dengan until. Secara singkat, repeat……until.

Pada line kesepuluh, ‘if (des mod 16 < 10) then Heks:=chr(48+ des mod 16)+Heks’. Ini merupakan perintah untuk menjalankan fungsi. Artinya, jika suatu bilangan decimal dibagi basis bilangan heksadesimal, yaitu 16 dan bersisa dibawah 10, maka bilangan heksadesimalnya merupakan sisa pembagian tadi ditambah dengan sisa pembagian sebelumnya. Dalam hal ini, sisa pembagian tersebut dalam skala bilangan 0 s/d 9 ( < 10). Fungsi chr digunakan untuk merubah nilai dari byte x ke bentuk karakter yang sesuai dengan kode ASCII. Atau dalam Pascal, diberi keterangan bahwa fungsi chr digunakan untuk mengembalikan karakter dengan nomor urut tertentu. Seperti dalam fungsi tersebut, nilainya ingin diubah sesuai dengan kode ASCII dengan nomor urut 48+.

Pada line kesebelas, ‘else Heks:=chr(55+ des mod 16)+Heks;’. Maksudnya ketika suatu bilangan decimal dibagi basis bilangan heksadesimal, yaitu 16, maka bilangan heksadesimalnya merupakan sisa pembagian tadi ditambah dengan sisa pembagian sebelumnya. Fungsi chr digunakan untuk mengubah nilai tadi sesuai dengan kode ASCII dengan nomor urut 55+. Artinya untuk mengubah sisa pembagian > 9 s/d 15 ke karakter A s/d F sesuai dengan susunan angka pada bilangan heksadesimal.

Pada line kedua belas, ‘des:=des div 16;’. Maksudnya, hasil pembagian bilangan decimal dengan 16 akan tersimpan didalam variabel des. Atau variabel des akan menyimpan hasil pembagian bilangan decimal dengan angka 16. Div dan Mod dalam pascal berarti, div merupakan hasil suatu pembagian sedangkan mod merupakan sisa dari suatu pembagian.

Pada line ketiga belas, ‘writeln(des:7,Heks:20);’. Artinya, nilai dari variabel des dan heks akan ditulis dalam program ketika dijalankan pada spasi ketujuh dari kiri untuk nilai des dan spasi kedua puluh dari kiri untuk nilai heks.

Pada line keempat belas, ‘until des=0;’. Artinya perintah dari line kesepuluh sampai line ketiga belas akan diulangi terus-menerus sampai hasil bilangan decimal yang dibagi 16 mencapai hasil nol.

Pada line kelima belas, ‘writeln('',desi,' (desimal) =',Heks,' (Heksadesimal)');’. Ini merupakan output. Misalkan hasilnya seperti :

Pada line keenam belas, ‘end.’. Menandakan bahasa program telah selesai dibuat.