Kamis, 17 November 2011

Teori Bilangan dan Konversi Bilangan

Teori Bilangan

Ada beberapa sistem bilangan yang digunakan dalam sistem digital. Yang paling umum adalah sistem bilangan desimal, biner, oktal dan heksadesimal.Sistem bilangan desimal merupakan sistem bilangan yang paling familier dengan kita karena berbagai kemudahannya yang kita pergunakan sehari – hari. Secara matematis sistem bilangan bisa ditulis seperti contoh di bawah ini:

Tabel macam-macam sistem bilangan :






Konversi Bilangan Desimal, Biner, Oktal dan Heksadesimal
Pada momen yang berbahagia ini, saya ingin coba menjabarkan tahap2 sederhana proses konversi bilangan desimal, biner, oktal dan heksadesimal.

Bilangan desimal adalah bilangan yang menggunakan 10 angka mulai 0 sampai 9 berturut2. Setelah angka 9, maka angka berikutnya adalah 10, 11, 12 dan seterusnya. Bilangan desimal disebut juga bilangan berbasis 10. Contoh penulisan bilangan desimal : 1710. Ingat, desimal berbasis 10, maka angka 10-lah yang menjadi subscript pada penulisan bilangan desimal.

Bilangan biner adalah bilangan yang hanya menggunakan 2 angka, yaitu 0 dan 1. Bilangan biner juga disebut bilangan berbasis 2. Setiap bilangan pada bilangan biner disebut bit, dimana 1 byte = 8 bit.  Contoh penulisan : 1101112.

Bilangan oktal adalah bilangan berbasis 8, yang menggunakan angka 0 sampai 7. Contoh penulisan : 178.

Bilangan heksadesimal, atau bilangan heksa, atau bilangan basis 16, menggunakan 16  buah simbol, mulai dari 0 sampai 9, kemudian dilanjut dari A sampai F. Jadi, angka A sampai F merupakan simbol untuk 10 sampai 15. Contoh penulisan : C516.
Hmm.. Sepertinya prolognya sudah cukup. Lanjut ke proses kalkulasi… 8)
——————————————————————————————————————————
Saya langsung saja ambil sebuah contoh bilangan desimal yang akan dikonversi ke biner. Setelah itu, akan saya lakukan konversi masing2 bilangan desimal, biner, oktal dan heksadesimal.
Misalkan bilangan desimal yang ingin saya konversi adalah 2510.
Maka langkah yang dilakukan adalah membagi tahap demi tahap angka 2510 tersebut dengan 2, seperti berikut :
25 : 2 = 12,5

Jawaban di atas memang benar, tapi bukan tahapan yang kita inginkan. Tahapan yang tepat untuk melakukan proses konversi ini sebagai berikut :
25 : 2 = 12 sisa 1.    —–> Sampai disini masih mengerti kan? :)
Langkah selanjutnya adalah membagi angka 12 tersebut dengan 2 lagi. Hasilnya sebagai berikut :
12 : 2 = 6 sisa 0.      —–> Ingat, selalu tulis sisanya.
Proses tersebut dilanjutkan sampai angka yang hendak dibagi adalah 0, sebagai berikut :
25 : 2 = 12 sisa 1.
12 : 2 = 6 sisa 0.
6 : 2 = 3 sisa 0.
3 : 2 = 1 sisa 1.
1 : 2 = 0 sisa 1.
0 : 2 = 0 sisa 0…. (end)

Nah, setelah didapat perhitungan tadi, pertanyaan berikutnya adalah, hasil konversinya yang mana? Ya, hasil konversinya adalah urutan seluruh sisa-sisa perhitungan telah diperoleh, dimulai dari bawah ke atas.
Maka hasilnya adalah 0110012. Angka 0 di awal tidak perlu ditulis, sehingga hasilnya menjadi 110012. Sip? ;)
——————————————————————————————————————————
Lanjut…..sekarang saya akan menjelaskan konversi bilangan desimal ke oktal.
Proses konversinya mirip dengan proses konversi desimal ke biner, hanya saja kali ini pembaginya adalah 8. Misalkan angka yang ingin saya konversi adalah 3310. Maka :
33 : 8 = 4 sisa 1.
4 : 8 = 0 sisa 4.
0 : 8 = 0 sisa 0….(end)
Hasilnya? Coba tebak…418!!! :D
——————————————————————————————————————————
Sekarang tiba waktunya untuk mengajarkan proses konversi desimal ke heksadesimal… :D
Seperti biasa, langsung saja ke contoh. Hehe…
Misalkan bilangan desimal yang ingin saya ubah adalah 24310. Untuk menghitung proses konversinya, caranya sama saja dengan proses konversi desimal ke biner, hanya saja kali ini angka pembaginya adalah 16. Maka :
243 : 16 = 15 sisa 3.
15 : 16 = 0 sisa F.      —-> ingat, 15 diganti jadi F..
0 :  16 = 0 sisa 0….(end)
Nah, maka hasil konversinya adalah F316. Mudah, bukan? 8)
——————————————————————————————————————————
Fiuh..Lanjut lagi… :D
Sekarang kita beralih ke konversi bilangan biner ke desimal. Proses konversi bilangan biner ke bilangan desimal adalah proses perkalian setiap bit pada bilangan biner dengan perpangkatan 2, dimana perpangkatan 2 tersebut berurut dari kanan ke kiri bit bernilai 20 sampai 2n.
Langsung saja saya ambil contoh bilangan yang merupakan hasil perhitungan di atas, yaitu 110012. Misalkan bilangan tersebut saya ubah posisinya mulai dari kanan ke kiri menjadi seperti ini.
1
0
0
1
1
Nah, saatnya mengalikan setiap bit dengan perpangkatan 2. Ingat, perpangkatan 2 tersebut berurut mulai dari 20 sampai 2n, untuk setiap bit mulai dari kanan ke kiri. Maka :
1     ——>    1 x 20 = 1
0     ——>    0 x 21 = 0
0     ——>    0 x 22 = 0
1     ——>    1 x 23 = 8
1     ——>    1 x 24 = 16 —> perhatikan nilai perpangkatan 2 nya semakin ke bawah semakin besar
Maka hasilnya adalah 1 + 0 + 0 + 8 + 16 = 2510.
Nah, bandingkan hasil ini dengan angka desimal yang saya ubah ke biner di awal tadi. Sama bukan? ;)
——————————————————————————————————————————
Sudah ini, sudah itu, sekarang….nah, konversi bilangan biner ke oktal. hehe…siap?
Untuk merubah bilangan biner ke bilangan oktal, perlu diperhatikan bahwa setiap bilangan oktal mewakili 3 bit dari bilangan biner. Maka jika kita memiliki bilangan biner 1101112 yang ingin dikonversi ke bilangan oktal, langkah pertama yang kita lakukan adalah memilah-milah bilangan biner tersebut, setiap bagian 3 bit, mulai dari kanan ke kiri, sehingga menjadi seperti berikut :

110                 dan               111

Sengaja saya buat agak berjarak, supaya lebih mudah dimengerti. Nah, setelah dilakukan proses pemilah2an seperti ini, dilakukan proses konversi ke desimal terlebih dahulu secara terpisah. 110 dikonversi menjadi 6, dan 111 dikonversi menjadi 7. Hasilnya kemudian digabungkan, menjadi 678, yang merupakan bilangan oktal dari 1101112… 8)
“Tapi, itu kan kebetulan bilangan binernya pas 6 bit. Jadi dipilah2 3 pun masih pas. Gimana kalau bilangan binernya, contohnya, 5 bit?” Hehe…Gampang..Contohnya 110012. 5 bit kan? Sebenarnya pemilah2an itu dimulai dari kanan ke kiri. Jadi hasilnya 11 dan 001. Ini kan sebenarnya sudah bisa masing2 diubah ke dalam bentuk desimal. Tapi kalau mau menambah kenyamanan di mata, tambahin aja 1 angka 0 di depannya. Jadi 0110012. Tidak akan merubah hasil perhitungan kok. Tinggal dipilah2 seperti tadi. Okeh?
——————————————————————————————————————————
Selanjutnya adalah konversi bilangan biner ke heksadesimal.
Hmm…sebagai contoh, misalnya saya ingin ubah 111000102 ke bentuk heksadesimal. Proses konversinya juga tidak begitu rumit, hanya tinggal memilahkan bit2 tersebut menjadi kelompok2 4 bit. Pemilahan dimulai dari kanan ke kiri, sehingga hasilnya sbb :
1110            dan           0010
Nah, coba lihat bit2 tersebut. Konversilah bit2 tersebut ke desimal terlebih dahulu satu persatu, sehingga didapat :
1110 = 14    dan           0010 = 2
Nah, ingat kalau 14 itu dilambangkan apa di heksadesimal? Ya, 14 dilambangkan dengan E16.
Dengan demikian, hasil konversinya adalah E216.
Seperti tadi juga, gimana kalau bilangan binernya tidak berjumlah 8  bit? Contohnya 1101012? Yaa…Seperti tadi juga, tambahin aja 0 di depannya. Tidak akan memberi pengaruh apa2 kok ke hasilnya. Jadi setelah ditambah menjadi 001101012. Selanjutnya, sudah gampang kan? ;)
——————————————————————————————————————————
Selanjutnya, konversi bilangan oktal ke desimal. Hal ini tidak terlalu sulit. Tinggal kalikan saja setiap bilangan dengan perpangkatan 8. Contoh, bilangan oktal yang akan dikonversi adalah 718. Maka susunannya saya buat menjadi demikian :
1
7
dan proses perkaliannya sbb :
1 x 80 = 1
7 x 81 = 56
Maka hasilnya adalah penjumlahan 1 + 56 = 5710.
——————————————————————————————————————————
Habis konversi oktal ke desimal, maka saat ini giliran oktal ke biner. Hehe..
Langsung ke contoh. Misalkan saya ingin mengubah bilangan oktal 578 ke biner. Maka langkah yang saya lakukan adalah melakukan proses konversi setiap bilangan tersebut masing2 ke 3 bit bilangan biner. Nah, angka 5 jika dikonversi ke biner menjadi….? 1012. Sip. Nah, 7, jika dikonversi ke biner menjadi…? 1112. Mantap. Maka hasilnya adalah 1011112. Jamin benar deh…. :)
—————————————————————————————————————————————-
Hmm…berarti…sekarang giliran konversi oktal ke heksadesimal.
Untuk konversi oktal ke heksadesimal, kita akan membutuhkan perantara, yaitu bilangan biner. Maksudnya? Maksudnya adalah kita konversi dulu oktal ke biner, lalu konversikan nilai biner tersebut ke nilai heksadesimalnya. Nah, baik yang konversi oktal ke biner maupun biner ke heksadesimal kan udah dijelaskan. Coba buktikan, bahwa bilangan oktal 728 jika dikonversi ke heksadesimal menjadi 3A16. Bisa kan? Bisa dong… ;)
——————————————————————————————————————————
Selanjutnya adalah konversi bilangan heksadesimal ke desimal.
Untuk proses konversi ini, caranya sama saja dengan proses konversi biner ke desimal, hanya saja kali ini perpangkatan yang digunakan adalah perpangkatan 16, bukan perpangkatan 2. Sebagai contoh, saya akan melakukan konversi bilangan heksa C816 ke bilangan desimal. Maka saya ubah dulu susunan bilangan heksa tersebut, mulai dari kanan ke kiri, sehingga menjadi sebagai berikut :
8
C
dan kemudian dilakukan proses perkalian dengan perpangkatan 16, sebagai berikut :
8 x 160 = 8
C x 161 = 192     ——> ingat, C16 merupakan lambang dari 1210
Maka diperolehlah hasil konversinya bernilai 8 + 192 = 20010.
—————————————————————————————————————————
Tutorial berikutnya, konversi dari heksadesimal ke biner.
Dalam proses konversi heksadesimal ke biner, setiap simbol dalam heksadesimal mewakili 4 bit dari biner. Misalnya saya ingin melakukan proses konversi bilangan heksa B716 ke bilangan biner. Maka setiap simbol di bilangan heksa tersebut saya konversi terpisah ke biner. Ingat, B16 merupakan simbol untuk angka desimal 1110. Nah, desimal 1110 jika dikonversi ke biner menjadi 10112, sedangkan desimal 710 jika dikonversi ke biner menjadi 01112. Maka bilangan binernya adalah 101101112, atau kalau dibuat ilustrasinya seperti berikut ini :
B                         7       —-> bentuk heksa
11                       7       —-> bentuk desimal
1011                0111  —-> bentuk biner
Hasilnya disatukan, sehingga menjadi 101101112. Understood? ;)
——————————————————————————————————————————
Yang terakhir adalah konversi heksadesimal ke oktal.
Nah, sama seperti konversi oktal ke heksadesimal, kita membutuhkan bantuan bilangan biner. Lakukan terlebih dahulu konversi heksadesimal ke biner, lalu konversikan nilai biner tersebut ke oktal. Sebagai latihan, buktikan bahwa nilai heksadesimal E716 jika dikonversi ke oktal menjadi 3478.
Semoga berhasil....!!!

Rabu, 16 November 2011

Jenis dan Kerja Peralatan INPUT

Unit masukan atau peralatan input ini terdiri dari beberapa macam peranti yaitu :

A)  Keyboard

Keyboard merupakan unit input yang paling penting dalam suatu pengolahan data dengan komputer. Keyboard dapat berfungsi memasukkan huruf, angka, karakter khusus serta sebagai media bagi user (pengguna) untuk melakukan perintah-perintah lainnya yang diperlukan, seperti menyimpan file dan membuka file. Penciptaan keyboard komputer berasal dari model mesin ketik yang diciptakan dan dipatentkan oleh Christopher Latham pada tahun 1868, Dan pada tahun 1887 diproduksi dan dipasarkan oleh perusahan Remington. Keyboard yang digunakanan sekarang ini adalah jenis QWERTY, pada tahun 1973, keyboard ini diresmikan sebagai keyboard standar ISO (International Standar Organization). Jumlah tombol pada keyboard ini berjumlah 104 tuts. Keyboard sekarang yang kita kenal memiliki beberapa jenis port, yaitu port serial, ps2, usb dan wireless.

Jenis-Jenis Keyboard :
1.) QWERTY
2.) DVORAK
3.) KLOCKENBERG

Keyboard yang biasanya dipakai adalah keyboard jenis QWERTY, yang bentuknya ini mirip seperti tuts pada mesin tik. Keyboard QWERTY memiliki empat bagian yaitu :

1. typewriter key
2. numeric key
3. function key
4. special function key.


 


Tata kerja keyboard PC

Setiap kali salah satu tombol keyboard ditekan atau dilepas, keyboard akan mengirim kode ke host (host adalah komputer kalau keyboard dihubungkan ke PC, atau berupa mikrokontroler kalau keyboard dihubungkan ke perlatan berbasis mikrokontroler). Kode tersebut dinamakan sebagai scan code.

Scan code tombol ‘S’ adalah 1B (angka heksadesimal setara dengan angka biner 00011011). Ketika tombol ‘S’ ditekan keyboard akan mengirim 1B, jika tombol ‘S’ ditekan terus maka keyboard akan mengirimkan 1B berikutnya terus menerus, sampai ada tombol lain yang ditekan atau tombol ‘S’ tadi dilepas.
Keyboard juga mengirim kode saat ada satu tombol yang dilepas, kodenya adalah F0 (angka heksadesimal setara dengan angka biner 11110000), jadi kalau tombol ‘S’ tadi dilepas keyboard akan mengirim F0 dan 1B.

Kode-kode tersebut dikirim keyboard secara seri, artinya dikirimkan satu bit demi satu bit. Misalnya 1B dikirimkan dengan cara : mula-mula dikirim ‘1’, sesaat kemudian ‘1’ lagi dan menyusul ‘0’ sampai akhirnya terkirim sebanyak 8 bit yang berbentuk 00011011 (dikirim mulai dari bit yang paling kanan kemudian beregeser satu per satu sampai yang paling kiri).
Masing-masing tombol punya scan code sendiri, termasuk tombol ‘shift’, tombol ‘ctrl’ dan lain lain, jadi jika tombol ‘ctrl’ ditekan bersama dengan ‘S’, maka scan code yang dikirim adalah 14 (scan code untuk ‘ctrl’) dan 1B (scan code untul ‘S’). Terserah host untuk mengintepretasi scan code itu sebagai apa, bearti merupakan tugas program dalam mikrokontroler untuk mengenal scan code.

Scan code disusun sebagai kode 8 bit bisa dipakai untuk membedakan 256 macam kode, sedangkan keyboard PC hanya punya 101 tombol, jadi sesungguhnya kode 8 bit tadi  cukup untuk semua tombol. Tapi tombol di keyboard PC dikelompokkan menjadi 2 bagian, bagian utama dan bagian tambahan, bagian utama cukup dinyatakan dengan scan code 1 byte saja, sedangkan bagian tambahan diwakili dengan beberapa byte scan code yang selalu diawali dengan E0. Misalnya tombol ‘ctrl’ kiri diwakili dengan 14 sedangkan tombol ‘ctrl’ kanan diwakili dengan E0 14.

Scan code masing-masing tombol keyboard PC. Terlihat pada gambar tersebut, scan code tidak berupa kode ASCII yang biasa dipakai mewakili huruf , dan ditentukan secara acak, juga. Sehingga setelah diterima host, scan code harus dirubah menjadi kode ASCII dengan memakai cara ‘pencarian tabel’.

B) Mouse

Mouse adalah salah unit masukan (input device). Fungsi alat ini adalah untuk perpindahan pointer atau kursor secara cepat. Selain itu, dapat sebagai perintah praktis dan cepat dibanding dengan keyboard. Mouse mulai digunakan secara maksimal sejak sistem operasi telah berbasiskan GUI (Graphical User Interface). sinyal-sinyal listrik sebagai input device mouse ini dihasilkan oleh bola kecil di dalam mouse, sesuai dengan pergeseran atau pergerakannya. Sebagian besar mouse terdiri dari tiga tombol, umumnya hanya dua tombol yang digunakan yaitu tombol kiri dan tombol kanan. 

Saat ini mouse dilengkapi pula dengan tombol penggulung (scroll), dimana letak tombol ini terletak ditengah. Istilah penekanan tombol kiri disebut dengan klik (Click) dimana penekanan ini akan berfungsi bila mouse berada pada objek yang ditunjuk, tetapi bila tidak berada pada objek yang ditunjuk penekanan ini akan diabaikan. Selain itu terdapat pula istilah lainnya yang disebut dengan menggeser (drag) yaitu menekan tombol kiri mouse tanpa melepaskannya dengan sambil digeser. Drag ini akan mengakibatkan objek akan berpindah atau tersalin ke objek lain dan kemungkinan lainnya. Penekanan tombol kiri mouse dua kali secara cepat dan teratur disebut dengan klik ganda (double click) sedangkan menekan tombol kanan mouse satu kali disebut dengan klik kanan (right click)Mouse terdiri dari beberapa port yaitu mouse serial, mouse ps/2, usb dan wireless.




 
C) Trackball

Prinsip kerja dari trackball hampir sama dengan mouse. Perbedaan utama terletak pada konfigurasinya. Pada mouse operator harus menggerakkan seluruh badan dari mouse tersebut, sedangkan pada trackball badan dari trakcball tersebut tetap diam, tetapi tangan operatorlah yang menggerakkan bola untuk menunjukkan perpindahan kursor. Dengan cara demikian, trackball cukup ditempatkan pada tempat yang sempit pada sebuah meja kerja. Arah dan kecepatan kursor pada layar ditentukan oleh arah dan rotasi bola yang ada di atas badan trackball.
Alat yang digunakan untuk memindahkan krusor dengan cara menggerakkan bola (alat ini mirip dengan mouse hanya bedanya pada mouse bola berada dibawah sedang pada trackball, bola berada diatasnya).
Trackball pertama tahun 1978 dan digunakan untuk game pertarungan di Atari. Game pertama yang menggunakan Trackball adalah Atari Footbal
Tahun 1995 trackball menjadi standar perangkat yang digunakan untuk menjalankan game.




 
D) Joystick

Alat ini biasa digunakan pada permainan (games) komputer. Joy Stick biasanya berbentuk tongkat, sedangkan games paddle biasanya berbentuk kotak atau persegi terbuat dari plastik dilengkapi dengan tombol-tombol yang akan mengatur gerak suatu objek dalam komputer.

Joystick elements:

1.Stick
2. Base
3. Trigger
4. Extra buttons
5. Autofire switch
6. Throttle
7. Hat Switch (POV Hat)
8. Suction Cup

Joystick merupakan peranti penuding tak langsung. Gerakan kursor dikendalikan oleh gerakan tuas (pada joystick absolut) atau dengan tekanan pada tuas (pada joystick terkendalu atau joystick isometrik. Pada joystick biasanya terdapat tombol yang dapat dipilih atau diasoasikan dengan papan ketik.

Alat ini digunakan untuk memindahkan obyek gambar dalam layar monitor, fungsinya hampir sama dengan mouse namun joystick hanya digunakan untuk program game.
Dalam pengoperasiannya, joystick tidak memerlukan tempat yang luas. Joystick mempunyai perbndingan K/T yang berubah-ubah.




E) Light Pen & Graphic Tablet

Light pen adalah pointer elektronik yang digunakan untuk modifikasi dan men-design gambar dengan screen (monitor). Light pen memiliki sensor yang dapat mengirimkan sinyal cahaya ke komputer yang kemudian direkam, dimana layar monitor bekerja dengan merekam enam sinyal elektronik setiap baris per detik.

Dibawah ini adalah gambar Light Pen


 

Teknologi Computer Aided Design (CAD) dapat membuat rancangan bangunan, rumah, mesin mobil, dan pesawat dengan menggunakan Graphics Pads. Graphics pads ini merupakan input masukan untuk menggambar objek pada monitor. Graphics pads yang digunakan mempunyai dua jenis. Pertama, menggunakan jarum (stylus) yang dihubungkan ke pad atau dengan memakai bantalan tegangan rendah, yang pada bantalan tersebut terdapat permukaan membrane sensitif sentuhan ( touch sensitive membrane surface). Tegangan rendah yang dikirimkan kemudian diterjemahkan menjadi koordinat X – Y. Kedua, menggunakan bantalan sensitif sentuh ( touch sensitive pad) tanpa menggunakan jarum. Cara kerjanya adalah dengan meletakkan kertas gambar pada bantalan, kemudian ditulisi dengan pensil.








F) Scanner

Scanner adalah sebuah alat yang dapat berfungsi untuk meng copy atau menyalin gambar atau teks yang kemudian disimpan ke dalam memori komputer. Dari memori komputer selanjutnya, disimpan dalam harddisk ataupun floppy disk. Fungsi scanner ini mirip seperti mesin fotocopy, perbedaannya adalah mesin fotocopy hasilnya dapat dilihat pada kertas sedangkan scanner hasilnya dapat ditampilkan melalui monitor terlebih dahulu sehingga kita dapat melakukan perbaikan atau modifikasi dan kemudian dapat disimpan kembali baik dalam bentuk file text maupun file gambar. Selain scanner untuk gambar terdapat pula scan yang biasa digunakan untuk mendeteksi lembar jawaban komputer. Scanner yang biasa digunakan untuk melakukan scan lembar jawaban komputer adalah SCAN IR yang biasa digunakan untuk LJK (Lembar Jawaban Komputer) pada ulangan umum dan Ujian Nasional. Scan jenis ini terdiri dari lampu sensor yang disebut Optik, yang dapat mengenali jenis pensil 2B. Scanner yang beredar di pasaran adalah scanner untuk meng-copy gambar atau photo dan biasanya juga dilengkapi dengan fasilitas OCR (Optical Character Recognition) untuk mengcopy atau menyalin objek dalam bentuk teks.

Saat ini telah dikembangkan scanner dengan teknologi DMR (Digital Mark Reader), dengan sistem kerja mirip seperti mesin scanner untuk koreksi lembar jawaban komputer, biodata dan formulir seperti formulir untuk pilihan sekolah. Dengan DMR lembar jawaban tidak harus dijawab menggunaan pensil 2 B, tapi dapat menggunakan alat tulis lainnya seperti pulpen dan spidol serta dapat menggunakan kertas biasa.






 Sekian postingan dari saya semoga bermanfaat.