Senin, 30 Desember 2013

Komunikasi Data dan Jaringan Komputer

a. Jaringan Komputer
Jaringan komputer adalah kumpulan komputer, printer dan peralatan lainnya yang terhubung dalam satu kesatuan. Setiap komputer printer atau peripheral yang terhubung dengan jaringan disebut node.
Secara umum jaringan komputer dibagi atas lima jenis, yaitu :
1. Local Area Network (LAN) , merupakan jaringan milik pribadi di dalam sebuah gedung atau kampus yang berukuran sampai beberapa kilometer.
2. Metropolitan Area Network (MAN) , pada dasarnya merupakan versi LAN yang berukuran lebih besar dan biasanya menggunakan teknologi yang sama dengan LAN. MAN dapat mencakup kantor-kantor perusahaan yang letaknya berdekatan atau juga sebuah kota.
3. Wide Area Network (WAN) , jangkauannya mecakup daerah geografis yang luas, seringkali mencakup sebuah negara bahkan benua. WAN terdiri dari kumpulan mesin-mesin yang bertujuan untuk menjalankan program-program (aplikasi) pemakai.
4. Internet , pada dasarnya internet merupakan kumpulan jaringan yang terinterkoneksi. Hal ini terjadi karena orang yang terhubung ke jaringan sering berharap untuk bisa berkomunikasi dengan orang lain yang terhubung jaringan lainnya. Untuk melakukan hal ini diperlukan sebuah mesin yang disebut gateway guna melakukan hubungan dan melaksanakan terjemahan yang diperlukan, baik perangkat keras maupun perangkat lunaknya.
5. Jaringan Tanpa Kabel , merupakan solusi terhadap komunikasi yang tidak bisa dilakukan dengan jaringan yang menggunakan kabel.
Topologi Jaringan Komputer
Topologi adalah suatu cara menghubungkan komputer yang satu dengan komputer lainnya sehingga membentuk jaringan. Cara yang saat ini banyak digunakan adalah bus, token-ring, dan star. Masing-masing topologi ini mempunyai ciri khas, dengan kelebihan dan kekurangannya sendiri.

topologi bus
Keuntungan
• Hemat kabel
• Layout kabel sederhana
• Mudah dikembangkan
Kerugian
• Deteksi dan isolasi kesalahan sangat kecil
• Kepadatan lalu lintas
• Bila salah satu client rusak, maka jaringan tidak bisa berfungsi.
• Diperlukan repeater untuk jarak jauh

1. Topologi Token Ring
Metode token-ring (sering disebut ring saja) adalah cara menghubungkan komputer sehingga berbentuk ring (lingkaran). Setiap simpul mempunyai tingkatan yang sama. Jaringan akan disebut sebagai loop, data dikirimkan kesetiap simpul dan setiap informasi yang diterima simpul diperiksa alamatnya apakah data itu untuknya atau bukan.

topologi RING
Keuntungan
• Hemat Kabel
Kerugian
• Peka kesalahan
• Pengembangan jaringan lebih kaku

1. Topologi Star
Kontrol terpusat, semua link harus melewati pusat yang menyalurkan data tersebut kesemua simpul atau client yang dipilihnya. Simpul pusat dinamakan stasiun primer atau server dan ainnya dinamakan stasiun sekunder atau client server. Setelah hubungan jaringan dimulai oleh server maka setiap client server sewaktu-waktu dapat menggunakan hubungan jaringan tersebut tanpa menunggu perintah dari server.
topologi STAR
Keuntungan
• Paling fleksibel
• Pemasangan stasiun sangat mudah dan tidak mengganggu bagian jaringan lain
• Kontrol terpusat
• Kemudahan deteksi dan isolasi kesalahan/kerusakan
• Kemudahaan pengelolaan jaringan
Kerugian
• Boros kabel
• Perlu penanganan khusus
• Kontrol terpusat (HUB) jadi elemen kritis

a. Komunikasi Data
Komunikasi data adalah bagian dari telekomunikasi yang secara khusus berkenaan dengan transmisi atau pemindahan data dan informasi diantara komputer-komputer dan piranti-piranti yang lain dalam bentuk digital yang dikirimkan melalui media komunikasi data. Data berarti informasi yang disajikan oleh isyarat digital.
Komponen Komunikasi Data
1. Penghantar/pengirim, adalah piranti yang mengirimkan data
2. Penerima, adalah piranti yang menerima data
3. Data, adalah informasi yang akan dipindahkan
4. Media pengiriman, adalah media atau saluran yang digunakan untuk mengirimkan data
5. Protokol, adalah aturan-aturan yang berfungsi untuk menyelaraskan hubungan
Protokol adalah sebuah aturan yang mendefinisikan beberapa fungsi yang ada dalam sebuah jaringan komputer, misalnya mengirim pesan, data, informasi dan fungsi lain yang harus dipenuhi oleh sisi pengirim dan sisi penerima agar komunikasi dapat berlangsung dengan benar, walaupun sistem yang ada dalam jaringan tersebut berbeda sama sekali.
Standar protokol yang terkenal yaitu OSI (Open System Interconnecting) yang ditentukan oleh ISO (International Standart Organization).
Fungsi dari protokol adalah untuk menghubungkan sisi pengirim dan sisi penerima dalam berkomunikasi serta dalam bertukar informasi agar dapat berjalan dengan baik dan benar.
Terdiri atas 7 layer (lapisan) yang mendefinisikan fungsi. Untuk tiap layernya dapat terdiri atas sejumlah protocol yang berbeda, masing-masing menyediakan pelayanan yang sesuai dengan fungsi layer tersebut.
  1. Application Layer:
  2. Presentation Layer:
  3. Session Layer:
  4. Transport Layer:
  5. Network Layer.
  6. Data-link Layer.
  7. Physical Layer


Minggu, 29 Desember 2013

Bash Scripting

Bash Scripting adalah salah satu bentuk pemrograman yang dikaitkan dengan pemrograman interpreter. Dikarenakan interpreter, maka hasil dari program yang telah dibuat tidak dikompilasi, tapi dijalankan secara langsung dengan memanggil interpreternya. Oleh karena menggunakan interpreter, maka sebuah skrip shell selalu diawali dengan memanggil interpreter yang digunakan untuk membantu interpreter dalam menterjemahkan program yang telah dibuat agar tidak salah. Bash Scripting di Linux biasa di gunakan untuk membuat program agar bisa menjalankan perintah, seperti melakukan suatu penghitungan, mengetahui username, mengetahui tanggal, dan lain-lain.

tanda-tanda menjelang ajal

Tanda 100 hari menjelang ajal :
Selepas waktu Ashar (Di waktu Ashar karena pergantian dari terang ke gelap), kita merasa dari ujung rambut sampai kaki menggigil, getaran yang sangat kuat, lain dari biasanya, Bagi yang menyadarinya akan terasa indah di hati, namun yang tidak menyadari, tidak ada pengaruh apa-apa.

Tanda 40 hari menjelang kematian :
Selepas Ashar, jantung berdenyut-denyut. Daun yang bertuliskan nama kita di lauh mahfudz akan gugur. Malaikat maut akan mengambil daun kita dan mulai mengikuti perjalanan kita sepanjang hari.

Tanda 7 hari menjlang ajal :
Akan diuji dengan sakit, Orang sakit biasanya tidak selera makan. Tapi dengan sakit ini tiba-tiba menjadi berselera meminta makanan ini dan itu.

Tanda 3 hari menjelang ajal :
Terasa denyutan ditengah dahi. Jika tanda ini dirasa, maka berpuasalah kita, agar perut kita tidak banyak najis dan memudahkan urusan orang yang memandikan kita nanti.

Tanda 1 hari sebelum kematian :
Di waktu Ashar, kita merasa 1 denyutan di ubun-ubun, menandakan kita tidak sempet menemui Ashar besok harinya.
Bagi yang khusnul khotimah akan merasa sejuk di bagian pusar, kemudian ke pinggang lalu ketenggorokan, maka dalam kondisi ini hendaklah kita mengucapkan 2 kalimat syahadat.



Senin, 23 Desember 2013

macam-macam distro linux dan windows



MACAM-MACAM DISTRO LINUX
DEBIAN
REDHAT
UBUNTU
FEDORA
XANDROS
KNOPPIX
SLACKWARE
SUSE
CENTOS
GENTOO
MANDRIVA LINUX/LINUX-MANDRAKE
FRESSPIRE
PCLINUXOS
PUPPY LINUX
DAMN SMALL LINUX
KULIAX
LYCORIS
LINDOWS
LINARE






MACAM-MACAM DISTRO WINDOWS
WINDOWS 1.0
WINDOWS 2.x
WINDOWS 2.1x
WINDOWS 3.1
WINDOWS FOR WORKGROUPS
WINDOWS NT
WINDOWS 95
WINDOWS NT. 4. 0
WINDOWS 98
WINDOWS 2000
\WINDOWS ME
WINDOWS XP
WINDOWS Vista
WINDOWS Home Server
WINDOWS Server 2008
WINDOWS 7
WINDOWS 8.

Senin, 16 Desember 2013

FUNGSI

Fungsi
Fungsi merupakan blok dari kode yang dirancang untuk melakukan tugas khusus.
Adapun tujuan dari pembuatan fungsi ini adalah :
·         Program menjadi terstruktur.
·         Program yang besar dapat dipecah menjadi beberapa program yang lebih kecil, yang setiap satu program kecil tersebut mempunyai tugas tertentu.
·         Dapat mengurangi duplikasi kode.
·         Fungsi dapat dipanggil dari program atau fungsi yang lain.

Dasar Fungsi

Pada umumnya fungsi memerlukan masukan yang dinamakan argumen atau parameter. Hasil akhir fungsi  akan berupa sebuah nilai (nilai balik fungsi).

bentuk umum:

Penentu-tipe nama_fungsi (daftar parameter)
Deklarasi parameter
{
          Tubuh fungsi
}

Penentu tipe berfungsi untuk menentukan tipe keluaran fungsi yang dapat berupa salah satu tipe data C++ yang berlaku, misalnya char atau int. Default tipe fungsi yang tidak disebutkan dianggap sebagai int.

Contoh:
            Inisialisasi ()
     {
          Return (0)
     }

Pada fungsi diatas dijelaskan sebagai berikut:

·         Penentu tipe fungsi tidak disebutkan, berarti keluaran bertipe int.
·         Inisialisasi adalah nama fungsi.
·         Tanda () menyatakan bahwa fungsi tidak memiliki parameter.
·         Tanda { dan } merupakan awal dan akhir fungsi.
·         Return (0) merupakan pernyataan dalam tubuh fungsi.
Suatu fungsi cukup didefinisikan sekali tetapi dapat digunakan beberapa kali. Jika  tubuh fungsi banyak mengandung pernyataan maka pemakaian fungsi dapat menghindari duplikasi kode dan menghemat penulisan program maupun kode dalam memori. Jadi fungsi merupakan semacam subprogram.

Adapun bentuk umumnya adalah sebagai berikut:

Inisialisasi ()
{
Return (0);
}
main()
{
Int x,y;
.... . .
x=inisialisasi();
............. . .
y=inisialisasi()
}

contoh implementasi fungsi
/*program:fungsi1.cpp */
#include

/*deklarasi fungsi*/
Int findMax(int n1, int n2);
Void PrintMax (int m);

Main ()
{
          Int i = 5;
          Int j = 7;
          Int k;
          k = FindMax (i,j);
          PrintMax(k);
Return 0;
     }
/* definisi fungsi */
Int FindMax (int n1, int n2)
{
          If (n1 >n2)
          {
              Return n1;
          }
          Else
          {
              Return n2
          }
}
Void PrintMax (int m)
{
     Printf (“Bilangan yang terbesar adalah :%d\n”,m);
}

Bila program diatas dijalankan, maka hasilnya adalah sebagai berikut:
Bilangan yang terbesar adalah : 7

Penjelasan:

  • Program diatas adalah contoh fungsi untuk menampilkan bilangan terbesar diantara 2 buah bilangan.
  • Dimana sebelum bilangan pertama dengan bilangan kedua dibandingkan, terlebih dahulu didefinisikan fungsi yaitu:

int findmax (int n1, n2)
     {
          if (n1>n2)
          {
              return n1;
          }
          else
          {
              return n2;
          }

Jika bilangan pertama waktu dibandingkan dengan bilangan kedua menghasilkan hasil terbesar atau angkanya lebih besar maka bilangan pertama yang terbesar. Sedangkan sebaliknya.
  • Untuk bilangan pertama diwakili i yang nilainya 5 dan nantinya akan mengisi n1.
  • bilangan kedua yang diwakili j yang nilainya 7 dan nantinya akan mengisi n2.

Parameter Formal dan Parameter Aktual
           
  • Parameter formal adalah variabel yang ada pada daftar parameter dalam fungsi.
  • Parameter aktual adalah parameter yang dapat berupa variabel atau konstanta maupun ungkapan yang dipakai dalam pemanggilan fungsi.

cara melewatkan parameter adalah :
·         Pemanggilan dengan nilai
·         Pemanggilan dengan referensi



Contoh :
           
a...x
            b...y

Dengan cara ini nilai parameter aktual tidak dapat berubah sekalipun nilai parameter formal berubah-ubah sebab x merupakan salinan dari A dan y salinan dari B.
Pada saat pemanggilan suatu fungsi, misalnya:
           
a bernilai 20 → x juga bernilai 20
            b bernilai 30 → y juga bernilai 30

Selanjutnya nilai x dan y diproses tetapi nilai a dan b akan tetap.

Pemanggilan dengan referensi merupakan usaha melewatkan alamat dari suatu variabel ke dalam fungsi. Dengan pengubahan dilakukan di dalam fungsi untuk mengubah variabel di luar fungsi.

Perhatikan:

Tukar (int *px, int *py)
{
          Int z;
          Z=*px;
          *px=*py;
          *py=z;
          . . . . . . . . .
}

Parameter aktualnya:
            Tukar (&a, &b);

Dalam deklarasi parameternya:
            Int *px, int *py

Dalam hal ini, px menunjukkan variabel a dan py menunjukkan variabel b.
(*adalah tanda pointer)

Dapat digambarkan sebagai berikut:
px                                                                                             py
   alamat a                                                                                            alamat b
               a                                                                                           b

Apabila penggalan program tersebut, kita implementasikan pada program, hasilnya adalah sebagai berikut:


contoh parameter formal dan aktual

/* program: fungsi2.cpp*/
#include
Void tukar (int x, int y);
Main()
     Int a, b;
     a=99;
     b=11;
     printf (“nilai sebelum pemanggilan fungsi:\n”);
     printf (“nilai a=%d nilai b=%d\n\n”,a,b);
     tukar (a, b);
     printf (“nilai sesudah pemanggilan fungsi: \n”);
     printf (“nilai a=%d nilai b=%d\n\n”,a,b);
}
Void tukar (int px, int py)
{
     Int z;
     z=px;
     px=py;
     py=z;
     printf (“nilai diakhir fungsi : \n”);
     printf (“nilai px=%d niali py=%d\n\n”,px,py);
}

Hasilnya :
Nilai sebelum pemanggilan fungsi:
            nilai a=99 nilai b=11
            nilai diakhir fungsi:
            nilai px=11 nilai py=99
Nilai sesudah pemanggilan fungsi:
            nilai a=99 nilai b=11

penjelasan:
Setelah px menunjukkan a dan py menunjukkan b, proses penukaran isi a dan b dilakukan dengan cara sebagai berikut:
            z=px;
            px=py;
py=z;
Dengan melalui tiga pernyataan diatas, nilai a dan nilai b dapat diubah dalam fungsi.


Rekursi

Fungsi rekursif adalah suatu fungsi yang memanggil dirinya sendiri, artinya fungsi tersebut dipanggil di dalam tubuh fungsi itu sendiri.
Fungsi faktorial, yang menghitung nilai faktorial dari suatu bilangan bulat positif, merupakan pokok bahasan yang memudahkan pemahaman fungsi rekursif. Berikut adalah fungsi faktorial yang diselesaikan dengan cara biasa:
           
int faktorial (int n)
     {
     int counter, hasil = 1;
     for (counter = n ; counter >= 1 ; counter--)
          hasil *= counter;
     return hasil;
}

Fungsi tersebut menunjukkan bahwa nilai faktorial dihitung menggunakan looping sehingga melakukan proses sebagai berikut:
           
Hasil = 1;
            Hasil = hasil * n; artinya hasil = n;
            Hasil =hasil * (n-1) artinya hasil = n x (n-1);
Demikian seterusnya sampai n bernilai 1, atau jika dituliskan sekaligus menjadi:
           
Faktorial = n! = n x (n-1) x (n-2) .... x 1;
Fungsi ini dapat dituliskan dalam bentuk:
            Faktorial (n) = n! = n x (n-1) !;

Yang menunjukan sifat rekursif dari suatu fungsi, yaitu (n-1)!. Oleh karena itu, fungsi faktorial yang telah ditulis dalam program C++ sebelumnya, dapat ditulis kembali dalam bentuk rekursif sebagai berikut:
           

int faktorial (int n)
     {
     if (n == 0)
     return 1;
     else
     return (n * faktorial (n-1));
     }
           

Program contoh rekursi untuk faktorial

/*program: fungsi3.cpp*/
#include

Int faktorial (int n)
{
If (n==1)
           Return (1);
Else
           Return (n*faktorial (n-1));
}
Main ()
{
Int x;
Printf (“mencari nilai faktorial\n”);
Printf (“masukkan nilai x:”) ; scanf (“%d”,&x) ;
Printf (“nilai faktorial dari %d=%d\n”,x,faktorial (x) );
}

Hasilnya:
Mencari nilai faktorial
Masukkan nilai x: 4
Nilai faktorial dari 4=24