Senin, 30 Juli 2012

Biner, Oktal, Desimal, Hexadesimal, dan Konversi-Konversinya


Angka berapa yang kalian tahu? 1? 29? 46? Angka-angka yang kita ketahui selama ini adalah angka desimal (berbasis 10). Dimulai dari 0 sampai 9, setelah lewat dari 9 maka akan naik jumlah digitnya. Tapi dalam dunia komputer, terdapat empat basis bilangan yang diakui. Biner (berbasis 2), oktal (berbasis 8), desimal (berbasis 10) dan hexadesimal (berbasis 16). Bingung? Baiklah kita akan buka pelan-pelan.
Biner adalah bilangan berbasis 2 dimana hanya terdiri dari 0 dan 1. Ini adalah bilangan sesungguhnya yang bisa dibaca oleh mesin, semua bilangan akan dikonversi ke biner agar bisa dibaca oleh perangkat komputer.
Mengubah bilangan desimal ke biner cukup mudah. Cukup dengan membagi bilangan tersebut dengan 2 sampai hasilnya 1 atau 0 dan mencatat sisa tiap pembagian :
205(10)
205 : 2 = 102 sisa 1
102 : 2 = 51 sisa 0
51 : 2 = 25 sisa 1
25 : 2 = 12 sisa 1
12 : 2 = 6 sisa 0
6 : 2 = 3 sisa 0
3 : 2 = 1 sisa 1
 sebagai sisa akhir “1”
Untuk menuliskan notasi binernya, pembacaan dilakukan dari bawah yang berarti 11001101(2)
Mengubah dari biner ke desimal menggunakan langkah sebaliknya yaitu mengalikan dengan 2 pangkat n tiap angka biner dari 2 pangkat 0 sampai 2 pangkat n dari belakang ke depan :
11001101(2)
Biner
1
1
0
0
1
1
0
1
11001101
Desimal
128
64
0
0
8
4
0
1
205
Pangkat
27
26
25
24
23
22
21
20
X1-7
Dengan nilai akhir didapat dari 128 + 64 + 8 + 4 + 1 = 205.
Oktal dan Hexadesimla pun caranya sama dengan di atas, hanya saja Oktal menggunakan basis 8 dan Hexadesimal menggunakan basis 16. Biasanya cara mudah konversi Oktal dari/ke Hexadesimal adalah dengan mengubahnya terlebih dahulu ke biner.
Acuan yang digunakan adalah tabel oktal dan hexadesimal berikut :
Tabel Digit Oktal
Digit Oktal
Ekivalens 3-Bit
0
000
1
001
2
010
3
011
4
100
5
101
6
110
7
111
Tabel Digit Heksadesimal
Digit Hexadesimal
Ekivalens 4-Bit
0
0000
1
0001
2
0010
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A (10)
1010
B (11)
1011
C (12)
1100
D (13)
1101
E (14)
1110
F (15)
1111
Baik cara konversi ke desimal maupun dari desimal, semuanya sama persis dengan cara untuk bilangan biner, hanya saja basis bilangannya diubah menjadi 8 atau 16.
Sampai disini mengerti? Ini adalah dasar dari bilangan-bilangan yang kita pakai dalam postingan-postingan berikutnya. Saya harap anda mengerti. Untuk lebih mengerti, silakan anda latihan konversi-konversi ini dengan berbagai macam angka dan bilangan. Untuk praktisnya gunakan tabel-tabel diatas.
Untuk sekarang, Auf Wiedersehen und hoffen Sie einige gute Studien habenmeine Freund!!!

Minggu, 29 Juli 2012

Linux dan Microsoft Windows yang Damai



Sekarang ini saya menggunakan 2 jenis Sistem Operasi, yaitu Microsoft Windows 7 dan Linux Ubuntu 12.04. Mungkin teman-teman sudah tahu bahwa kedua OS ini seakan-akan terus “berperang”. Setiap OS memiliki komunitas fanatiknya sendiri-sendiri. Tapi, bukankah akan lebih menyenangkan jika keduanya bisa berdamai?



Windows dan Linux seharusnya bisa akrab. Kenapa saya bilang begitu, karena saya pribadi menggunakan keduanya dan nyaman-nyaman saja, tuh! Untuk penggunaan Windows 7, saya menggunakannya untuk pemrograman visual seperti Visual Basic, Visual C# dan lain sebagainya. Selain itu, karena saya kuliah di Computer Engineering (Sistem Komputer) maka beberapa aplikasi seperti ISIS PROTEUS dan Codevision AVR hanya berjalan di Microsoft Windows.

Microsoft Visual C# 2010

Microsoft Visual Basic 2010

ISIS Proteus

Lalu karena saya suka main game (meskipun tidak seekstrim dulu), maka saya tetap mempertahankan Windows 7 di laptop saya. Saya sering kerja pakai Linux Ubuntu, tapi saya tidak mau menjadi fanatik Linux yang sampai “mengharamkan” Windows. Kami di Computer Engineering diharuskan bisa memakai segala jenis Sistem Operasi.

Sedangkan untuk Linux Ubuntu, saya menggunakannya untuk sebagian besar  pekerjaan saya. Virtualisasi menggunakan Virtualbox, saya cenderung menggunakan Virtualbox di Ubuntu. Bukan kenapa-kenapa, karena Windows 7 saya masih 32 bit sementara RAM saya 6GB maka jika mau terbaca full ya harus menggunakan Ubuntu 64 bit saya (^_^). Selain itu karena saya cenderung ke server administration maka Linux merupakan suatu kewajiban besar, mengingat sebagian besar server di dunia ini adalah Linux.

Selain itu, ada aplikasi yang bisa dipakai di kedua OS (cross platform). Misalnya Cisco Packet Tracer 5.3, yang merupakan mainan favorit saya tahun 2010 (pertama kali menceburkan diri ke dunia Jaringan Komputer). Selain itu pemrograman Command Line seperti Pascal, Fortran, Basic, C, C++ dan Web Programming tentu saja bisa saya kerjakan di platform manapun!
Untuk Linux, seluruh bahasa pemrograman di atas bisa dikerjakan menggunakan 1 IDE saja : Geany. Dengan catatan, kita sudah menginstall seluruh paket dependensinya (Free Pascal, FreeBASIC, GCC dan lain sebagainya). Ini membuat kinerja menjadi lebih cepat, tidak perlu repot membuka banyak jendela hanya untuk mengetes algoritma di berbagai bahasa pemrograman (^_^).

IDE Geany pada Ubuntu 12.04
Belajar komputer itu mengasyikkan. Saya membuat blog ini untuk mengajak pembaca belajar komputer dengan cara yang ringan dan asyik. Saya punya 1 blog lagi di wordpress, alamatnya sama persis dengan alamat blog ini (kecuali bagian wordpress.com-nya) dan blog itu saya gunakan untuk analisa riset, oprekan dan pembelajaran yang “agak berat” bagi orang awam. Tapi karena saya ingin orang awam juga bisa mengerti jalan pikiran seorang Pasokon Otaku seperti saya, maka mari kita belajar komputer dengan cara yang ringan \(^o^)/.

Semoga apa yang saya tulis bermanfaat bagi anda semua.
Untuk sekarang, Auf Wiedersehen und hoffen Sie einige gute Studien habenmeine Freund!!!

Sabtu, 28 Juli 2012

Konstanta dan Variabel pada Fortran 95


Melanjutkan pembahasan mengenai bahasa pemrograman Fortran, kali ini kita akan membahas mengenai tata cara penulisan konstanta dan variabel pada bahasa pemrograman Fortran.
Pertama, apa itu konstanta dan variabel? Dalam pemrograman Fortran, konstanta (constant) adalah objek data yang didefinisikan sebelum program dieksekusi dan nilainya tidak berubah sepanjang program itu berjalan, sementara variabel (variable) adalah objek data yang nilainya bisa berubah selama program berjalan. Nama variabel diperbolehkan sepanjang 31 karakter yang terdiri dari alfabet, nomor dan underscore, dengan catatan karakter pertama harus alfabet. Misalnya timetime_to_live,garu123 dan lain sebagainya.
Sekarang kita akan membedah lebih dalam lagi tentang konstanta dan variabel. Yang pertama adalah konstanta dan variabel integer. Integer berarti angka yang tidak mengandung koma atau titik desimal. Jika bernilai positif, maka bisa ditulis dengan atau tanpa tanda +. Contohnya adalah 1, -6 dan +300.
Kedua adalah konstanta dan variabel real. Seperti namanya, konstanta dan variabel ini menyimpan nilai real, yang berarti mengandung titik desimal. Contohnya adalah 1.5, 5.8E3 (huruf ‘E’ berarti 10 pangkat) dan +6.E-3.
Terakhir adalah konstanta dan variabel character. Konstanta character berarti sekumpulan karakter alfanumerik yang diapit dua tanda kutip single ataupun double. Contohnya adalah “Tes”, ‘gateway’ dan ‘kosong01′. Lantas bagaimana jika kita ingin memasukkantanda petik? Kita bisa memasukkannya dengan menggunakan dua buah tanda kutip single. Jika ingin menulis Stein’s Gate maka kita bisa menulisnya dengan Stein”s Gate (ingat, itu bukan tanda kutip double tapi dua buah tanda kutip single!).
Baiklah, setelah mengerti semuanya, kini kita masuk ke tata cara penulisannya. Dalam bahasa pemrograman Fortran, penulisan variabel real dan integer sama. Misalnya kita ingin mendefinisikan variabel integer bernama angka dan variabel real bernama koma. Maka penulisannya pada Fortran adalah :
INTEGER :: angka
REAL :: koma
Sementara pendefinisian variabel character bisa kita tentukan panjangnya di awal. Ada 3 cara pendefinisian variabel character :
CHARACTER (len=<panjang>) :: var1, var2,……
CHARACTER :: var1,…..
CHARACTER(<panjang>) :: var1,…..
Bingung? Kita langsung pakai saja! Misalnya kita ingin mendefinisikan variabel character dengan panjang 1 karakter, 3 karakter dan 5 karakter dengan nama variabel huruf, kita bisa menulisnya seperti berikut :
CHARACTER :: huruf
CHARACTER(len=3) :: huruf
CHARACTER(5) :: huruf
Nah, sekarang sudah mengerti tata cara penulisan variabel, kan? Kini kita masuk ke konstanta. Ingat, bahwa pendefinisian konstanta dilakukan sebelum bagian Execution Section pada program. Nilai konstanta tidak akan pernah berubah sepanjang program.
Penulisan konstanta pada Fortran 95 adalah sebagai berikut :
type, PARAMETER :: name1 = value1, name2 = value 2,……
Khusus untuk compiler GFortran95, untuk tipe data character, setelah type harus didefinisikan panjangnya (misalnya CHARACTER(30), PARAMETER :: kar = ‘Bahasa Fortran’).
Misalkan kita ingin membuat sebuah konstanta bernama elektron yang bernilai 1,602 x 10-19 dan konstanta kar yang berisikan kata “Fortran”. Maka penulisannya seperti berikut :
REAL, PARAMETER :: elektron = 1.602E-19
CHARACTER(10), PARAMETER :: kar = ‘Fortran’
Sekarang sudah mengerti tentang konstanta dan variabel? Baiklah, kini saya akan memberi sebuah contoh program tentang keduanya, silakan anda compile untuk analisa (^_^).
PROGRAM contoh_output
INTEGER, PARAMETER :: x = 5
CHARACTER(30), PARAMETER :: ROGER = ‘Ini Bahasa Fortran 95′
INTEGER :: ix
REAL :: theta
ix = 1
theta = 3.141593
WRITE (*,*) ‘Man”s best friends’
WRITE (*,*) ROGER
WRITE (*,*) ‘IX = ‘,ix
WRITE (*,*) ‘Theta = ‘,theta
WRITE (*,*) ‘Nilai x = ‘,x
END PROGRAM contoh_output
Sampai disini dulu penjelasan saya, semoga berguna bagi kita semua.
Untuk sekarang, Auf Wiedersehen und hoffen Sie einige gute Studien habenmeine Freund!!!

Pengenalan Bahasa Fortran 95


Kali ini saya akan membahas mengenai pemrograman. Saya akan menggunakan bahasa pemrograman Fortran 95. Kenapa saya menggunakan Fortran 95? Jawabannya gampang, keluarga Fortran adalah salah satu keluarga bahasa pemrograman yang paling mendekati Sistem Komputer selain Assembly dan Basic (^_^).
Compiler yang saya gunakan adalah GFortran dengan bantuan IDE Geany. Bagi yang memiliki compiler lainnya silakan digunakan karena inti dari pemrograman Fortran sama saja. Format data berupa *.f95.
Bahasa pemrograman Fortran terdiri dari Declaration SectionExecution Section dan Termination Section.Sekarang akan kita kupas satu per satu.
Declaration Section berisikan non-executablestatements yang berada pada bagian awal program. Bagian yang paling awal adalah statement PROGRAM yang mendefinisikan nama program kepada compiler. Di Fortran 95, nama program diperbolehkan sampai sepanjang 31 karakter, meliputi kombinasi huruf, angka dan underscore,dengan catatan bahwa karakter pertama haruslah huruf. Bagian berikutnya adalah deklarasi variabel. Variabel adalah tempat kita menaruh sebuah nilai tertentu untuk nantinya digunakan dalam perhitungan.
Di bawahnya terdapat Execution Section yang berisikan tindakan-tindakan yang akan dilakukan dalam program. Bisa merupakan perhitungan matematis, fungsi, prosedur dan lain sebagainya.
Dan terakhir adalah Termination Section yang berisikan statement STOP dan END PROGRAM. STOP berarti memerintahkan komputer untuk berhenti menjalankan program, sementara END PROGRAM memberitahu komputer bahwa tidak ada lagi statement yang harus di-compile.
Sekarang akan saya berikan contoh programnya. Program pertama ini adalah program untuk menampilkan tulisan “Saya suka Fortran”.
PROGRAM coba
WRITE (*,*) ‘Saya suka Fortran’
END PROGRAM coba
Dalam contoh program diatas, baris pertama adalah Declaration Section, baris kedua adalah Execution Sectiondan baris ketiga adalah Terminaton Section. Cukup mudah dimengerti, bukan?
Sekarang saya akan berikan sebuah program untuk menghitung perkalian :
PROGRAM program_tes
INTEGER :: i,j,k
WRITE (*,*) ‘Masukkan angka untuk mengalikan : ‘
READ(*,*) i,j
k = i*j
WRITE (*,*) ‘Hasil = ‘, k
STOP
END PROGRAM program_tes
Pertama, pada bagian Declaration Section, kita memberi nama program sebagai program_tes dan mendeklarasikan variabel i,j,k sebagai sebuah variabel integer (tipe-tipe variabel akan dibahas pada postingan selanjutnya).
Kemudian, pada bagian Execution Section, kita membaca input dari keyboard menggunakan perintah READ (*,*). Setelah kedua nilai i dan j masuk, kita akan mengalikan mereka berdua dan hasilnya ditaruh di variabel k. Lalu kita cetak nilai variabel k dengan perintah WRITE (*,*).
Terakhir, pada bagian Termination Section, kita menandakan akhir program dengan STOP dan END PROGRAM.
Sampai disini dulu penjelasan saya, semoga bermanfaat bagi anda semua.
Untuk sekarang, Auf Wiedersehen und hoffen Sie einige gute Studien habenmeine Freund!!!

Designed by Animart Powered by Blogger