Selasa, 08 Oktober 2013

Wisata Hati




 


Rasulullah Shalallahu ‘alaihi wassalam selalu memulai hidupnya dengan Tahajjud (Shalat malam).

Tidak sembarang hamba yang mau melaksanakan tahajjud.
Kita mungkin bisa bangun malam, tapi belum tentu mau shalat tahajjud kecuali hamba-hamba-Nya yang terpilih.

Para malaikat pun terkagum-kagum dengan orang yang melaksanakan shalat tahajjud. Dan Allah menjanjikan keutamaan bagi siapa saja yang mengerjakan shalat malam.

“Dan pada sebahagian malam hari bersembahyang tahajudlah kamu sebagai suatu ibadah tambahan bagimu. Mudah-mudahan Tuhan-mu mengangkat kamu ke tempat yang terpuji.” (Q.S. Al-Israa’ [17] : 79)

Adapun sedekah, ia adalah jalan cepat bagi siapa saja yang ingin mendapatkan rizki.

Sebagaimana sabda Rasulullah SAW : “Carilah rizki dengan bersedekah” . Bahkan bertambah-tambah.

Kiat sukses menuju kaya adalah sedekah.
Rasulullah SAW bersabda : “Tidak akan pernah berkurang harta yang disedekahkan kecuali ia bertambah.. bertambah.. bertambah..” (HR. at-Tirmidzi).

Dan Allah pun sudah menetapkan rahmat kepada hamba-hamba-Nya yang mau bersedekah hingga hari di mana tidak ada lagi pertologan sedikitpun dari seorang istri, anak, sahabat maupun harta yang dibanggakan kecuali hanyalah pertolongan Allah yang dapat mengangkat derajat seorang manusia yang mau menyedekahkan hartanya di jalan Allah.

“Maka akan Aku tetapkan rahmat-Ku untuk orang-orang yang bertakwa, yang menunaikan sedekah dan orang-orang yang beriman kepada ayat-ayat Kami." (Q.S. Al-A’raf [7] : 156)
Read More >>

Pemrograman Berorientasi Obyek

  Syarat Polymorphisme :
·         Method yang dipanggil harus melalui variabel dari basis class atau superclass.
·         Method yang dipanggil harus juga menjadi method dari basis class.
·         Signature method harus sama baik pada superclass maupun subclass.
·         Method access attribute pada subclass tidak boleh lebih terbatas dari basis class.

Contoh dalam program C++ :

#include <stdio.h>
#include <iostream.h>
// Deklarasi kelas-kelas
class Kotak
{
 protected :
 int panjang, lebar;
 long luas, keliling;
 public :
 Kotak (int Panjang, int Lebar);
 int ambil_panjang();
 int ambil_lebar();
virtual void hitung(); // metode virtual
void ambil (long& Luas, long& Keliling);
 };
 class Balok : public Kotak
{
 private :
int tinggi;
 int volume;
 public :
 Balok (int Panjang, int Lebar, int Tinggi);
 int ambil_tinggi();
 virtual void hitung(); // metode virtual
void ambil (long& Luas, long& Keliling, long& Volume);
};

 // Definisi metode-metode kelas Kotak
Kotak::Kotak (int Panjang, int Lebar)
{
 panjang = Panjang;
 lebar = Lebar;
 }
 int Kotak::ambil_panjang()
 {
 return panjang;
}
 int Kotak::ambil_lebar()
 {
 return lebar;
}
 void Kotak::hitung()
 {
 luas = panjang * lebar;
 keliling = 2 * (panjang + lebar);
}
 void Kotak::ambil (long& Luas, long& Keliling)
 {
 Luas = luas;
 Keliling = keliling;
 }

 // Definisi metode-metode kelas Balok
 Balok::Balok (int Panjang, int Lebar, int Tinggi):Kotak (Panjang, Lebar)
 {
 tinggi = Tinggi;
 }
 int Balok::ambil_tinggi()
 {
 return tinggi;
 }
 void Balok::hitung()
 {
 Kotak::hitung();
 volume = panjang*lebar*tinggi;
 }
 void Balok::ambil(long& Luas, long& Keliling, long& Volume)
 {
 Kotak::ambil(Luas, Keliling);
 Volume = volume;
}

 // Program Utama
int main ()
 {
Kotak A (12, 3);
 Balok B (12, 3, 8);
 cout << "Menghitung luas, keliling, dan volume bangun" <<endl;
 cout << "===============================================" <<endl;
 A.hitung();

 long l, k;
 A.ambil(l, k);
 cout << "Kotak sisi-sisinya : " <<endl;
cout << "Panjang = " << A.ambil_panjang() << endl;
 cout << "Lebar = " << A.ambil_lebar() << endl;
cout << "Memiliki luas " << l <<" dan keliling "<< k <<endl <<endl;

long v;
 B.hitung();
 B.ambil(l, k, v);
 cout << "Balok dengan rusuk-rusuknya : " << endl;
cout << "Panjang = " << B.ambil_panjang() <<endl;
cout << "Lebar = " << B.ambil_lebar() << endl;
cout << "Tinggi = " << B.ambil_tinggi() << endl;
cout << "Memiliki luas " << l <<", keliling "<< k <<", dan volume " << v <<endl;
}



2.      Manfaat Polymorphisme

·         Dapat menggunakan kelas-kelas yang kita buat (sebagai super kelas) dan membuat kelas kelas baru berdasar superkelas tersebut dengan karakteristik yang lebih khusus dari behaviour umum yang dimiliki superkelas.
·         Dapat membuat super kelas yang hanya mendefinisikan behaviour namun tidak memberikan implementasi dari metode-metode yang ada.
·         Menghindari duplikasi object, Dapat menciptakan class baru dari class yang sudah ada,sehingga tidak perlu menuliskan code dari nol ataupun mengulangnya, namun tetap bisa menambahkan attribute dan method unik dari class itu sendiri.


3.      Manfaat Inheritance :
·         Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada.
·         Programmer Java dapat mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum.
·         Kemudahan dalam me-manage kelas yang memiliki data dan method yang sama Untuk memodifikasi suatu data atau method untuk semua subkelas / kelas anak, makatidak perlu melakukan perubahan di masing-masing kelas anak melainkan hanya pada kelas induk saja.

Contoh inheritance dalam java :

[modifier] class namaSubKelas extend namaKelasSuper {
// classBody
}
public class Komunitas {
String nama;
String alamat;
String alamat2;
String kota;
int umur;
/** Defenisi kelas Komunitas */
public Komunitas() {
nama = "";
alamat = "";
alamat2 = "";
kota = "";
umur = 0;
}
public Komunitas(String newNama, String newAlamat, String newAlamat2, String newKota, int
newUmur) {
nama = newNama;
alamat = newAlamat;
alamat2 = newAlamat2;
kota = newKota;
umur = newUmur;
}
public void setNama (String newNama){
nama = newNama;
}
public void setAlmat (String newAlamat){
alamat = newAlamat;
}
public void setAlamat2 (String newAlamat2) {
alamat2 = newAlamat2;
}
public void setKota (String newKota) {
kota = newKota;
}
public void setUmur (int newUmur) {
umur = newUmur;
}
public String getNama (){
return nama;
}
public String getAlamat (){
return alamat;
}
public String getAlamat2 (){
return alamat2;
}
public String getKota (){
return kota;
}
public int getUmur (){
return umur;
}
public String toString(){
String str =
"Nama : "+ nama + "\n"+
"Alamat 1 : "+ alamat + "\n"+
"Alamat 2 : "+ alamat2 + "\n"+
"Kota : "+ kota + "\n"+
"Umur : "+ umur + "\n";
return str;
}
static void nilai(){
Komunitas t = new Komunitas ("Sukma Murdani, S.Kom","Jalan Aru","Lubuk
Begalung","Padang",25);
System.out.println("\nSukma Murdani sebagai Dosen Komunitas:\n");
System.out.println(t);
}
public static void main(String[] args) {
nilai();
}
}
public class Mahasiswa extends Komunitas {
String BP;
String strata;
String Jurusan;
/** Penciptaan Kelas Mahasiswa sebagai Pewarisan dari Komunitas */
public Mahasiswa() {
super();
BP = "";
strata = "";
Jurusan = "";
}
public Mahasiswa (String newNama, String newAlamat, String newAlamat2, String newKota, int
newUmur, String newBP, String newStrata, String newJurusan) {
super(newNama, newAlamat, newAlamat2, newKota, newUmur);
BP = newBP;
strata = newStrata;
Jurusan = newJurusan;
}
public void setBP (String newBP) {
BP = newBP;
}
public String getBP () {
return BP;
}
public void setStrata (String newStrata) {
strata = newStrata;
}
public String getStrata () {
return strata;
}
public void setJurusan (String newJurusan) {
Jurusan = newJurusan;
}
public String getJurusan() {
return Jurusan;
}
public String toString(){
String str =
"Nama : "+ nama + "\n"+
"Alamat 1 : "+ alamat + "\n"+
"Alamat 2 : "+ alamat2 + "\n"+
"Kota : "+ kota + "\n"+
"Umur : "+ umur + "\n"+
"NRP : "+ BP + "\n"+
"Strata : "+ strata + "\n"+
"Jurusan : "+ Jurusan;
return str;
}
static void nilai(){
Mahasiswa t = new Mahasiswa ("James Bond","Jalan Aru","Lubuk
Begalung","Padang",20,"10007","Strata 1","Teknik Informatika");
System.out.println("\nJames Bond sebagai Mahasiswa Komunitas:\n");
System.out.println(t);
}
public static void main(String[] args) {
nilai();
}
}

Read More >>

PROCESSOR






SEJARAH PROCESSOR

Pada masa dahulu bentuk processor di pasang secara slot, tetapi saat ini, bentuk processor semuanya di pasang secara socket. Pada saat ini terdapat dua perusahaan besar processor yaitu Intel dan AMD. Bentuk luar dari keduanya hampir sama yaitu berbentuk segiempat dan mempunyai banyak pin. Processor Intel yang tidak memiliki pin yaitu socket LGA775, sebaliknya motherboard yang lain mempunyai pin connector untuk di hubungkan dengan processor.

Jumlah bit dalam fungsi processor bervariasi sesuai dengan jenis data, mulai dari 1 dan 4 byte 8-bit. Instruksi dapat dikelompokkan berdasarkan kategori, di antaranya Access Memory, Operasi Aritmatika, Logika Operasi dan Pengendalian.

Processor merupakan salah satu komponen penyusun komputer yang memiliki peran dan fungsi penting. Processor ini berbentuk chip yang berfungsi sebagai pusat pengendali seluruh perangkat yang terdapat pada komputer sehingga tidak heran bila banyak orang menyebut processor sebagai otaknya sebuah komputer. 

PENGERTIAN PROCESSOR

Processor sering disebut sebagai otak dan pusat pengendali computer yang didukung oleh komponen lainnya. Processor adalah sebuah IC yang mengontrol keseluruhan jalannya sebuah sistem komputer dan digunakan sebagai pusat atau otak dari komputer yang berfungsi untuk melakukan perhitungan dan menjalankan tugas. Processor terletak pada socket yang telah disediakan oleh motherboard, dan dapat diganti dengan processor yang lain asalkan sesuai dengan socket yang ada pada motherboard. Salah satu yang sangat besar pengaruhnya terhadap kecepatan komputer tergantung dari jenis dan kapasitas processor.

Prosesor adalah chip yang sering disebut “Microprosessor” yang sekarang ukurannya sudah mencapai Gigahertz (GHz). Ukuran tersebut adalah hitungan kecepatan prosesor dalam mengolah data atau informasi. Merk prosesor yang banyak beredar dipasaran adalah AMD, Apple, Cyrix VIA, IBM, IDT, dan Intel. Bagian terpenting dari prosesor terbagi 3 yaitu :
·                      Aritcmatics Logical Unit (ALU)
Tugas utama ALU adalah melakukan semua perhitungan aritmatika yang terjadi sesuai instruksi program. ALU melakukan semua operasi aritmatika dengan dasar penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.
·                      Control Unit (CU)
Unit ini bertugas mengatur dan mengendalikan semua peralatan yang ada pada sistem komputer. Control unit akan mengatur kapan alat input menerima dat adan kapan data akan diolah serta kapan ditampilkan pada alat output. Unit ini juga mengartikan instruksi-instruksidari program komputer, membawa data dari alat input ke memori utama, dan mengambil data dari memori utama untuk diolah.
Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika maka control unit akan mengirim instruksi tersebut ke ALU. Hasil pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke alat output.
Dengan demikian, tugas control unit adalah :
1.      Mengatur dan mengendalikan alat-alat input dan output
2.      Mengambil instruksi-instruksi memori utama
3.      Mengambil data dari memori utama (jika diperlukan) untuk diproses
4.      Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja ALU
5.      Menyimpan hasil proses ke memori utama  


·                      Memory Unit (MU)
Memory unit atau sering disebut register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan instruksi yang sedang diproses sementara data dan instruksi lainnya yang menunggu giliran untuk diproses masih disimpan di dalam memori utama.
 

CARA KERJA PROCESSOR
Cara kerja prosessor, apa pun merknya, pada dasarnya sama. Mereka menerima sinyal 0 dan 1 (seperti hasil klik saklar “on” dan “off”), lalu memproses sinyal tersebut berdasarkan perintah yang diberikan, dan mengeluarkan hasil 0 dan 1,  juga (biasa disebut sebagai sistem digital). Setiap perintah diproses oleh paling sedikit satu transistor. Sejumlah transistor memproses perintah dengan menggunakan logika Boolean. Boolean adalah sistem aljabar yang berisi “or”, “and”, “not”, dan “nand” (not and), yang diperkenalkan oleh seorang ahli matematika George Boole. Karena prosessor memiliki jutaan transistor, bisa dibayangkan betapa kompleks penghitungan yang dilakukannya.
Ada dua hal yang berperan penting dalam prosessor, yaitu register dan system clock. Register berfungsi sebagai penyimpan data, pengingat perintah-perintah yang diterima oleh prosessor, dan menarik data tadi ketika dibutuhkan. Kemampuan prosessor diukur dari seberapa banyak perintah dikerjakan dalam waktu bersamaan. Dalam bahasa brosur ditunjukkan lewat jenis prosessor 16 bit, 32 bit atau 64 bit. Artinya masing-masing prosessor ini mampu mengerjakan perintah 0 dan 1 tadi, ada yang 16, 32 atau 64 perintah secara bersamaan.
Prosessor membutuhkan waktu untuk mengerjakan setiap perintah. Jika perintah datang mengalir deras, maka prosessor akan mengatur perintah-perintah itu dalam sebuah antrian yang rapi. Waktu penyelesaian satu perintah diukur dalam satu siklus. Seberapa cepat satu siklus itu bergantung pada desain prosessornya. Itulah yang menyebabkan mengapa satu PC dan PC lainnya membutuhkan waktu yang berbeda untuk menjalankan sebuat software.



SEJARAH PERKEMBANGAN PROCESSOR

Ø  1971 : 4004 Microprocessor
Pada tahun 1971 munculah microprocessor pertama Intel , microprocessor 4004 ini digunakan pada mesin kalkulator Busicom. Dengan penemuan ini maka terbukalah jalan untuk memasukkan kecerdasan buatan pada benda mati.

Ø  1972 : 8008 Microprocessor
Pada tahun 1972 munculah microprocessor 8008 yang berkekuatan 2 kali lipat dari pendahulunya yaitu 4004.

Ø  1974 : 8080 Microprocessor
Menjadi otak dari sebuah komputer yang bernama Altair, pada saat itu terjual sekitar sepuluh ribu dalam 1 bulan

Ø  1978 : 8086-8088 Microprocessor
Sebuah penjualan penting dalam divisi komputer terjadi pada produk untuk komputer pribadi buatan IBM yang memakai prosesor 8088 yang berhasil mendongkrak nama intel.

Ø  1982 : 286 Microprocessor
Intel 286 atau yang lebih dikenal dengan nama 80286 adalah sebuah processor yang pertama kali dapat mengenali dan menggunakan software yang digunakan untuk processor sebelumnya.

Ø  1985 : Intel386™ Microprocessor
Intel 386 adalah sebuah prosesor yang memiliki 275.000 transistor yang tertanam diprosessor tersebut yang jika dibandingkan dengan 4004 memiliki 100 kali lipat lebih banyak dibandingkan dengan 4004

Ø  1989 : Intel486™ DX CPU Microprocessor
Processor yang pertama kali memudahkan berbagai aplikasi yang tadinya harus mengetikkan command-command menjadi hanya sebuah klik saja, dan mempunyai fungsi komplek matematika sehingga memperkecil beban kerja pada processor.

Ø  1993 : Intel® Pentium® Processor
Processor generasi baru yang mampu menangani berbagai jenis data seperti suara, bunyi, tulisan tangan, dan foto.

Ø  1995 : Intel® Pentium® Pro Processor
Processor yang dirancang untuk digunakan pada aplikasi server dan workstation, yang dibuat untuk memproses data secara cepat, processor ini mempunyai 5,5 jt transistor yang tertanam.

Ø  1997 : Intel® Pentium® II Processor
Processor Pentium II merupakan processor yang menggabungkan Intel MMX yang dirancang secara khusus untuk mengolah data video, audio, dan grafik secara efisien. Terdapat 7.5 juta transistor terintegrasi di dalamnya sehingga dengan processor ini pengguna PC dapat mengolah berbagai data dan menggunakan internet dengan lebih baik.

Ø  1998 : Intel® Pentium II Xeon® Processor
Processor yang dibuat untuk kebutuhan pada aplikasi server. Intel saat itu ingin memenuhi strateginya yang ingin memberikan sebuah processor unik untuk sebuah pasar tertentu.

Ø  1999 : Intel® Celeron® Processor
Processor Intel Celeron merupakan processor yang dikeluarkan sebagai processor yang ditujukan untuk pengguna yang tidak terlalu membutuhkan kinerja processor yang lebih cepat bagi pengguna yang ingin membangun sebuah system computer dengan budget (harga) yang tidak terlalu besar. Processor Intel Celeron ini memiliki bentuk dan formfactor yang sama dengan processor Intel jenis Pentium, tetapi hanya dengan instruksi-instruksi yang lebih sedikit, L2 cache-nya lebih kecil, kecepatan (clock speed) yang lebih lambat, dan harga yang lebih murah daripada processor Intel jenis Pentium. Dengan keluarnya processor Celeron ini maka Intel kembali memberikan sebuah processor untuk sebuah pasaran tertentu.

Ø  1999 : Intel® Pentium® III Processor
Processor Pentium III merupakan processor yang diberi tambahan 70 instruksi baru yang secara dramatis memperkaya kemampuan pencitraan tingkat tinggi, tiga dimensi, audio streaming, dan aplikasi-aplikasi video serta pengenalan suara.

Ø  1999 : Intel® Pentium® III Xeon® Processor
Intel kembali merambah pasaran server dan workstation dengan mengeluarkan seri Xeon tetapi jenis Pentium III yang mempunyai 70 perintah SIMD. Keunggulan processor ini adalah ia dapat mempercepat pengolahan informasi dari system bus ke processor , yang juga mendongkrak performa secara signifikan. Processor ini juga dirancang untuk dipadukan dengan processor lain yang sejenis.

Ø  2000 : Intel® Pentium® 4 Processor
Processor Pentium IV merupakan produk Intel yang kecepatan prosesnya mampu menembus kecepatan hingga 3.06 GHz. Pertama kali keluar processor ini berkecepatan 1.5GHz dengan formafactor pin 423, setelah itu intel merubah formfactor processor Intel Pentium 4 menjadi pin 478 yang dimulai dari processor Intel Pentium 4 berkecepatan 1.3 GHz sampai yang terbaru yang saat ini mampu menembus kecepatannya hingga 3.4 GHz.

Ø  2001 : Intel® Xeon® Processor
Processor Intel Pentium 4 Xeon merupakan processor Intel Pentium 4 yang ditujukan khusus untuk berperan sebagai computer server. Processor ini memiliki jumlah pin lebih banyak dari processor Intel Pentium 4 serta dengan memory L2 cache yang lebih besar pula.

Ø  2001 : Intel® Itanium® Processor
Itanium adalah processor pertama berbasis 64 bit yang ditujukan bagi pemakain pada server dan workstation serta pemakai tertentu. Processor ini sudah dibuat dengan struktur yang benar-benar berbeda dari sebelumnya yang didasarkan pada desain dan teknologi Intel’s Explicitly Parallel Instruction Computing ( EPIC ).

Ø  2002 : Intel® Itanium® 2 Processor
Itanium 2 adalah generasi kedua dari keluarga Itanium

Ø  2003 : Intel® Pentium® M Processor
Chipset 855, dan Intel® PRO/WIRELESS 2100 adalah komponen dari Intel® Centrino™. Intel Centrino dibuat untuk memenuhi kebutuhan pasar akan keberadaan sebuah komputer yang mudah dibawa kemana-mana.

Ø  2004 : Intel Pentium M 735/745/755 processors
Dilengkapi dengan chipset 855 dengan fitur baru 2Mb L2 Cache 400MHz system bus dan kecocokan dengan soket processor dengan seri-seri Pentium M sebelumnya.

Ø  2004 : Intel E7520/E7320 Chipsets
7320/7520 dapat digunakan untuk dual processor dengan konfigurasi 800MHz FSB, DDR2 400 memory, and PCI Express peripheral interfaces.

Ø  2005 : Intel Pentium 4 Extreme Edition 3.73GHz
Sebuah processor yang ditujukan untuk pasar pengguna komputer yang menginginkan sesuatu yang lebih dari komputernya, processor ini menggunakan konfigurasi 3.73GHz frequency, 1.066GHz FSB, EM64T, 2MB L2 cache, dan HyperThreading.

Ø  2005 : Intel Pentium D 820/830/840
Processor berbasis 64 bit dan disebut dual core karena menggunakan 2 buah inti, dengan konfigurasi 1MB L2 cache pada tiap core, 800MHz FSB, dan bisa beroperasi pada frekuensi 2.8GHz, 3.0GHz, dan 3.2GHz. Pada processor jenis ini juga disertakan dukungan HyperThreading.

Ø  2006 : Intel Core 2 Quad Q6600
Processor untuk type desktop dan digunakan pada orang yang ingin kekuatan lebih dari komputer yang ia miliki memiliki 2 buah core dengan konfigurasi 2.4GHz dengan 8MB L2 cache (sampai dengan 4MB yang dapat diakses tiap core ), 1.06GHz Front-side bus, dan thermal design power ( TDP )

Ø  2006 : Intel Quad-core Xeon X3210/X3220
Processor yang digunakan untuk tipe server dan memiliki 2 buah core dengan masing-masing memiliki konfigurasi 2.13 dan 2.4GHz, berturut-turut , dengan 8MB L2 cache ( dapat mencapai 4MB yang diakses untuk tiap core ), 1.06GHz Front-side bus, dan thermal design power (TDP)


Read More >>