Sabtu, 10 Maret 2012

Swap dan Kernel

1. Swap pada memori


SWAP adalah suatu area pada harddisk yang merupakan bagian dari Virtual Memory. Disebut sebagai suatu area pada harddisk karena kita mengalokasikan/membuat partisi khusus pada harddisk pada saat penginstalan Linux. Swap menangani halaman memory yang tidak aktif untuk sementara waktu.
Swap akan digunakan ketika system telah membutuhkan memory fisik (RAM) untuk menangani proses aktif tetapi memory fisik (RAM) yang tidak terpakai (free) tidak mencukupi. Jika system membutuhkan lebih banyak sumber daya memori atau ruang maka halaman yang tidak aktif pada memory fisik (RAM) akan dipindahkan ke swap agar dapat memberi ruang pada memory fisik (RAM) untuk menangani proses lainnya.
Dikarenakan disk (swap berada pada harddisk) lebih lambat daripada RAM, waktu respon untuk system dan aplikasi menjadi lambat jika seandainya terjadi perpindahan yang terlalu besar dari memori fisik. Terdapat parameter swappiness untuk mengontrol kecenderungan kernel untuk memindahkan proses dari memory ke swap.
Nilainya antara 0 -100, ketika swappiness=0 maka itu akan memberitahu kernel untuk menghindari prosses swapping (ram ke swap) selama mungkin, saat swappiness=100 maka itu akan memberitahu kernel untuk melakukan proses swapping secara agresif
Sebagaimana akan kita lihat, pada dasarnya ada empat tujuan yang berbeda untuk swap:
• Beberapa program benar-benar memakan memori.
• Memori tambahan mungkin akan berguna.
• Mengoptimalkan penggunaan memori.
• Hibernasi (suspend-to-disk)

Untuk mulai dengan, mari kita mengatakan bahwa komputer telah berubah banyak sejak swap yang pertama kali digunakan:
Pada awalnya, swap diperlukan untuk memperluas kapasitas memori nyata. Anda akan menggunakan swap sehingga memori yang tersedia akan penambahan ruang RAM dan ruang swap.

Saat ini, RAM sering cukup besar sehingga kita bisa menggunakan komputer tanpa swap sama sekali.

Beberapa program benar-benar memakan memori:
Kadang-kadang, sesuatu yang besar (seperti MySQL, Apache, PHP dll Handler) membuat seluruh sistem perlu memori tambahan.
Dalam kasus ini, swap akan digunakan untuk membuat sistem mampu menangani beban tambahan.

Memori tambahan mungkin akan berguna:
Kejadian tidak terduga, mungkin dan akan terjadi (program akan gila, beberapa tindakan membutuhkan ruang lebih banyak dari yang Anda pikir, atau kombinasi yang luar biasa lain dari peristiwa).
Dalam kasus ini, swap akan memberikan penundaan ekstra untuk mencari tahu apa yang terjadi atau untuk menyelesaikan sesuatu.

Swap dapat mengoptimalkan penggunaan memori:
Hard drive jauh lebih lambat dari RAM. Jadi, ketika Anda memerlukan file (baik itu file data, seperti video ini. Anda sedang menonton lagi dan lagi, executable, seperti Firefox, atau perpustakaan), kernel Linux membaca file ke dalam RAM dan menyimpannya di sana sehingga dari waktu berikutnya Anda membutuhkannya lagi, itu sudah dalam RAM dan akses data jauh lebih cepat (ribuan kali lebih cepat). Kita menyebut ini bagian dari RAM yang mempercepat hard disk membaca. Mereka membuat perbedaan besar dalam hal respon "memori cache.".
Kernel Linux secara otomatis bergerak RAM dilindungi oleh program tetapi tidak benar-benar digunakan di swap sehingga RAM ini dapat melayani tujuan yang lebih baik memiliki lebih banyak memori cache.

Hibernasi membutuhkan swap:
Fitur hibernasi (suspend-to-disk) menulis keluar isi memori untuk partisi swap sebelum mematikan mesin. Oleh karena itu, partisi swap Anda harus setidaknya sama besar dengan ukuran RAM Anda. Pelaksanaan hibernasi saat ini digunakan di Ubuntu, swsusp, membutuhkan partisi swap atau menangguhkan, dan tidak dapat menggunakan swap file pada sistem file yang aktif.

Apakah saya Perlu Partisi Swap dan Jika Jadi, Berapa Besar?
Sebuah komputer yang menjalankan GNU / Linux umumnya memiliki beberapa partisi yang berbeda di atasnya (tidak termasuk Windows atau OS lain skenario dual boot). Biasanya ada Master Boot Record kecil (MBR) partisi yang menampung boot loader (GRUB atau Lilo biasanya), sebuah partisi sistem yang menampung OS anda yang sebenarnya (biasanya cukup besar), dan biasanya ada partisi swap.
Saya memiliki paritition yang saya gunakan sebagai direktori rumah saya, tapi itu semacam, khusus belum umum, mengatur.

Partisi swap digunakan untuk membantu menjalankan sistem Anda lebih cepat. Ketika sistem anda kehabisan RAM fisik selama operasi, menggunakan partisi swap sebagai RAM dan menulis sedikit dari hal-hal yang saat ini dalam RAM, tetapi tidak diperlukan, untuk partisi swap. Hal ini memungkinkan Anda untuk menjalankan lebih banyak program sekaligus. Alternatif untuk memiliki swap adalah ... baik ... tidak memiliki swap. Dalam skenario ini, ketika Anda sudah membuka aplikasi cukup memori fisik Anda mengisi, tidak ada tempat untuk menulis overflow dan sistem Anda akan rawa turun cukup sedih.

OS paling modern memiliki semacam fasilitas swap. Pada Windows ini disebut sebagai pagefile, dan aku tidak yakin apa itu disebut sebagai pada Mac.

Swap adalah baik. Anda harus memiliki swap.
Swap adalah baik, tetapi dalam banyak sistem itu tidak perlu. Saya menemukan ini sama sekali dengan kecelakaan satu hari. Aku muffed up partisi ketika saya menginstal Kubuntu dan tidak mengalokasikan partisi swap. Yang lucu adalah bahwa aku tidak menyadari selama berbulan-bulan dan ketika aku melihat hal itu adalah dengan berbicara dengan seseorang yang menanyakan sesuatu tentang swap, bukan karena masalah apapun kinerja sistem. Sebelum kejadian ini, saya tidak berpikir hal itu mungkin untuk menjalankan kotak GNU / Linux tanpa swap, tetapi ternyata bahwa tidak hanya mungkin, beberapa orang melakukannya dengan sengaja.

Dalam dunia rumah / desktop, jika Anda memiliki GB RAM atau lebih, sistem Anda mungkin tidak pernah menukar apa pun. Rekomendasi untuk mengalokasikan swap mana saja 1,5-2 kali jumlah RAM fisik di sistem anda. Pada beberapa sistem, kehilangan 2 sampai 3 GB ruang disk mungkin menjadi kerugian cukup besar dan karena itu tidak layak. Di dunia server, berjalan tanpa swap propbably bunuh diri. Jangan lakukan itu.
Jika Anda penasaran, periksa penggunaan swap Anda sekarang dan lagi. Dengan KDE Anda dapat menggunakan Sistem Guard KDE dan ada beberapa gDesklets tersedia untuk Gnome (dan mungkin dibangun dalam aplikasi juga, tidak yakin) untuk melihat penggunaan swap anda.







2. Parent and child dalam sistem operasi

Berikut beberapa definisi proses pada sistem operasi adalah :
1. Program yang sedang dalam keadaan dieksekusi.
2. Unit kerja terkecil yang secara individu memiliki sumber daya dan dijadwalkan oleh sistem operasi.
Sistem operasi mengolah seluruh proses yang ada di sistem dan bertugas mengalokasikan sumber daya – sumber daya ke proses yang membutuhkan sesuai dengan kebijaksanaan tertentu. Sumber daya yang dibutuhkan proses diantaranya CPU, memori, file serta I/O device.
Keadaan Proses
Proses – proses yang dikelola oleh sistem operasi akan melalui serangkaian keadaan yang merupakan
Bagian dari aktivitasnya. Keadaan proses ini disebut sebagai status proses yang terdiri dari:
• Status New yaitu status dimana proses sedang dibuat.
• Status Ready yaitu status dimana proses siap dieksekusi tetapi CPU belum tersedia karena sedang mengerjakan proses lain.
• Status Waiting yaitu status dimana proses sedang menunggu suatu kejadian tertentu. Misalnya sedang menunggu operasi I/O selesai, menunggu signal dari proses lain, tersedianya memori, dsb.
• Status Running yaitu status dimana proses dieksekusi. Pada status ini CPU sedang mengeksekusi instruksi – instruksi pada proses.
• Status Terminated yaitu status dimana proses diakhiri.
Sebuah proses menjadi Waiting karena proses tersebut menunggu suatu kejadian tertentu seperti selesainya operasi I/O, misalnya perekaman data ke disk karena pada saat perekaman dilakukan proses sedang tidak menggunakan CPU maka scheduler segera mengalokasikan CPU ke proses lain yang telah Ready. Apabila kejadian yang ditunggu telah selesai maka proses dipindahkan kembali ke antrian Ready dan siap dijadwalkan.
Sebuah proses dari keadaan Running dapat menjadi Ready kembali karena diinterupsi oleh proses lain. Interupsi dapat disebabkan karena jatah waktu yang diberikan CPU ke proses tersebut telah habis sementara proses masih memerlukan sejumlah waktu untuk selesai. Jatah waktu yang diberikan sering disebut sebagai quantum time (time slice) yang dapat berkisar antara 1 hingga 100 milidetik. Interupsi suatu proses terkait erat dengan strategi penjadwalan proses yang digunakan sistem operasi yaitu strategi preemptive dimana suatu proses dapat saja disela oleh proses lain pada saat Running.
Sebuah proses menjadi Terminated disebabkan oleh beberapa hal diantaranya:
• Proses memang sudah sele sai mengerjakan tugasnya, sehingga diakhiri secara normal
• Melewati batas waktu yang telah diberikan.
• Terjadi kesalahan perhitungan misalnya mengerjakan instruksi pembagian dengan nol (division by zero), atau menyimpan angka yang lebih besar daripada yang dapat diakomodasi oleh perangkat keras.
• Terjadi kegagalan I/O seperti kegagalan pembacaan dan penulisan file.
• Proses induknya berakhir, pada kasus ini suatu proses dibuat oleh proses lain, proses pembuat disebut sebagai parent, sedangkan proses yang dibuat disebut sebagai child . Sistem dirancang untuk mengakhiri secara otomatis proses – proses childnya bila proses parent berakhir.
• Proses child diakhiri atas permintaan proses parentnya. Pada kasus ini parent mengirim signal tertentu untuk mengakhiri childnya misalnya mengirim signal SIGQUIT, SIGKILL atauSIGTERM.
Konsep Pembuatan dan Penghentian Proses
Konsep pembuatan proses pada sistem operasi linux :
• Setiap proses diberi nomor khusus sebagai identifikasi yang disebut process identification atau PID berupa angka integer unik.
• Jika proses selesai (Terminated) maka semua sumber daya yang digunakan termasuk PID dibebaskan kembali.
• Proses dibuat menggunakan system call fork() yang sering disebut forking proses
• System call fork() mengkopi proses pemanggil sehingga akan terdapat 2 proses yaitu :
1. Proses pemanggil disebut PARENT
2. Proses hasil kopian disebut CHILD
• Proses CHILD identik dengan proses PARENT-nya tetapi memiliki PID yang berbeda.
• Setelah proses baru (child) berhasil dibuat eksekusi dilanjutkan secara normal di masing –masing proses pada aris setelah pemanggilan system call fork().
• Proses pemanggil (PARENT) dapat melakukan forking proses lebih dari satu kali sehingga memungkinkan terdapat banyak proses CHILD yang dieksekusi.
• Proses CHILD dapat melakukan forking proses seperti halnya PARENT sehingga dapat terbentuk struktur pohon proses.
Sedangkan pada proses penghentian pada OS linux, jika telah menyelesaikan pernyataan terakhir, dan meminta pada sistem operasi untuk menghapusnya dengan menggunakan system call exit. Proses mengembalikan semua data (output) ke parent proses melalui system call wait. Kemudian proses dihapus dari list atau tabel sistem, dilanjutkan dengan menghapus PCB.
Penghapusan proses ini akan menjadi sangat kompleks jika ternyata proses yang akan dihentikan tersebut membuat proses-proses yang lain. Pada beberapa sistem, proses-proses anak akan dihentikan secara otomatis jika proses induknya berhenti. Namun, ada beberapa sistem yang menganggap bahwa proses anak ini terpisah dengan induknya, sehingga proses anak tidak ikut dihentikan secara otomatis pada saat proses induk dihentikan.
Parent dapat menghentikan eksekusi proses child dengan menggunakan system call abort. Proses anak dihentikan parent karena beberapa alasan, antara lain :
• Child mengalokasikan sumber daya melampaui batas
• Tugas child tidak dibutuhkan lebih lanjut
• Parent berhenti, karena system operasi tidak mengijinkan child untuk melanjutkan jika parent berhenti dan terminasi dilanjutkan
Alasan lain adalah:
• Proses selesai mengerjakan tugasnya(selesai normal)
• Proses berjalan melebihi batas waktu
• Memory tidak tersedia
• Proses mengakses kawasan memori yang tidak boleh diakses
• Terjadi kesalahan karena pelanggaran proteksi
• Terjadi kesalahan perhitungan
• Proses menunggu terlalu lama
• Terjadi kegagalan I/O
• Proses mengeksekusi instruksi yang tidak ada
• Proses mengguinakan instruksi yang disimpan untuk SO
• Terjadi kesalahan penggunaan data
• Terjadi intervensi dari operator atau SO (contoh : deadlock)
• Proses induk berahir
• Atas permintaan proses induk
3. Kernel
Kernel adalah suatu perangkat lunak yang menjadi bagian utama dari sebuah sistem operasi. Tugasnya melayani bermacam program aplikasi untuk mengakses perangkat keras komputer secara aman. Karena akses terhadap perangkat keras terbatas, sedangkan ada lebih dari satu program yang harus dilayani dalam waktu yang bersamaan, maka kernel juga bertugas untuk mengatur kapan dan berapa lama suatu program dapat menggunakan satu bagian perangkat keras tersebut. Hal tersebut dinamakan sebagaimultiplexing. Akses kepada perangkat keras secara langsung merupakan masalah yang kompleks, oleh karena itu kernel biasanya mengimplementasikan sekumpulan abstraksihardware. Abstraksi-abstraksi tersebut merupakan sebuah cara untuk menyembunyikan kompleksitas, dan memungkinkan akses kepada perangkat keras menjadi mudah dan seragam. Sehingga abstraksi pada akhirnya memudahkan pekerjaan programer. Untuk menjalankan sebuah komputer kita tidak harus menggunakan kernel sistem operasi. Sebuah program dapat saja langsung di- load dan dijalankan diatas mesin 'telanjang' komputer, yaitu bilamana pembuat program ingin melakukan pekerjaannya tanpa bantuan abstraksi perangkat keras atau bantuan sistem operasi. Teknik ini digunakan oleh komputer generasi awal, sehingga bila kita ingin berpindah dari satu program ke program lain, kita harus mereset dan meload kembali program-program tersebut.
Ada 4 kategori kernel:
1. Monolithic kernel.
Merupakan kernel yang menyediakan abstraksi perangkat keras yang kaya dan tangguh. Pendekatan kernel monolitik didefinisikan sebagai sebuah antarmuka virtual yang berada pada tingkat tinggi di atas perangkat keras, dengan sekumpulan primitif atau system call untuk mengimplementasikan layanan-layanan sistem operasi, seperti halnya manajemen proses, konkurensi (concurrency), dan manajemen memori pada modul-modul kernel yang berjalan di dalam mode supervisor.
Meskipun jika setiap modul memiliki layanan operasi-operasi tersebut terpisah dari modul utama, integrasi kode yang terjadi di dalam monolithic kernel sangatlah kuat, dan karena semua modul berjalan di dalam address space yang sama, sebuah bug dalam salah satu modul dapat merusak keseluruhan sistem. Akan tetapi, ketika implementasi dilakukan dengan benar, integrasi komponen internal yang sangat kuat tersebut justru akan mengizinkan fitur-fitur yang dimiliki oleh sistem yang berada di bawahnya dieksploitasi secara efektif, sehingga membuat sistem operasi dengan monolithic kernel sangatlah efisien—meskipun sangat sulit dalam pembuatannya.
Pada sistem operasi modern yang menggunakan monolithic kernel, seperti halnya Linux, FreeBSD, Solaris, dan Microsoft Windows, dapat memuat modul-modul yang dapat dieksekusi pada saat kernel tersebut dijalankan sehingga mengizinkan ekstensi terhadap kemampuan kernel sesuai kebutuhan, dan tentu saja dapat membantu menjaga agar kode yang berjalan di dalam ruangan kernel (kernel-space) seminim mungkin.
Di bawah ini ada beberapa sistem operasi yang menggunakan Monolithic kernel:
• Kernel sistem operasi UNIX tradisional, seperti halnya kernel dari sistem operasi UNIX keluarga BSD (NetBSD, BSD/I, FreeBSD, dan lainnya).
• Kernel sistem operasi GNU/Linux, Linux.
• Kernel sistem operasi Windows (versi 1.x hingga 4.x; kecuali Windows NT).
2. Microkernel.
Merupakan kernel yang menyediakan hanya sekumpulan kecil abstraksi perangkat keras sederhana, dan menggunakan aplikasi-aplikasi yang disebut sebagai server untuk menyediakan fungsi-fungsi lainnya.
Pendekatan mikrokernel berisi sebuah abstraksi yang sederhana terhadap hardware, dengan sekumpulan primitif atau system call yang dapat digunakan untuk membuat sebuah sistem operasi agar dapat berjalan, dengan layanan-layanan seperti manajemen thread, komunikasi antar address space, dan komunikasi antar proses. Layanan-layanan lainnya, yang biasanya disediakan oleh kernel, seperti halnya dukungan jaringan, pada pendekatan microkernel justru diimplementasikan di dalam ruangan pengguna (user-space), dan disebut dengan server. Server atau disebut sebagai peladen adalah sebuah program, seperti halnya program lainnya. Server dapat mengizinkan sistem operasi agar dapat dimodifikasi hanya dengan menjalankan program atau menghentikannya. Sebagai contoh, untuk sebuah mesin yang kecil tanpa dukungan jaringan, server jaringan (istilah server di sini tidak dimaksudkan sebagai komputer pusat pengatur jaringan) tidak perlu dijalankan. Pada sistem operasi tradisional yang menggunakan monolithic kernel, hal ini dapat mengakibatkan pengguna harus melakukan rekompilasi terhadap kernel, yang tentu saja sulit untuk dilakukan oleh pengguna biasa yang awam. Dalam teorinya, sistem operasi yang menggunakan microkernel disebut jauh lebih stabil dibandingkan dengan monolithic kernel, karena sebuah server yang gagal bekerja, tidak akan menyebabkan kernel menjadi tidak dapat berjalan, dan server tersebut akan dihentikan oleh kernel utama. Akan tetapi, dalam prakteknya, bagian dari system state dapat hilang oleh server yang gagal bekerja tersebut, dan biasanya untuk melakukan proses eksekusi aplikasi pun menjadi sulit, atau bahkan untuk menjalankan server-server lainnya.
Sistem operasi yang menggunakan microkernel umumnya secara dramatis memiliki kinerja di bawah kinerja sistem operasi yang menggunakan monolithic kernel. Hal ini disebabkan oleh adanya overhead yang terjadi akibat proses input/output dalam kernel yang ditujukan untuk mengganti konteks (context switch) untuk memindahkan data antara aplikasi dan server.
Beberapa sistem operasi yang menggunakan microkernel:
• IBM AIX, sebuah versi UNIX dari IBM
• Amoeba, sebuah kernel yang dikembangkan untuk tujuan edukasi
• Kernel Mach, yang digunakan di dalam sistem operasi GNU/Hurd, NexTSTEP, OPENSTEP, dan Mac OS/X
• Minix, kernel yang dikembangkan oleh Andrew Tanenbaum untuk tujuan edukasi
• Symbian OS, sebuah sistem operasi yang populer digunakan pada hand phone, handheld device, embedded device, dan PDA Phone.
3. Hybrid (modifikasi dari microkernel).
Kernel yang mirip microkernel, tetapi ia juga memasukkan beberapa kode tambahan di kernel agar ia menjadi lebih cepat. Beberapa orang banyak yang bingung dalam membedakan antara kernel hibrida dan kernel monolitik yang dapat memuat modul kernel setelah proses booting, dan cenderung menyamakannya. Antara kernel hibrida dan kernel monolitik jelas berbeda. Kernel hibrida berarti bahwa konsep yang digunakannya diturunkan dari konsep desain kernel monolitik dan mikrokernel. Kernel hibrida juga memiliki secara spesifik memiliki teknologi pertukaran pesan (message passing) yang digunakan dalam mikrokernel, dan juga dapat memindahkan beberapa kode yang seharusnya bukan kode kernel ke dalam ruangan kode kernel karena alasan kinerja.
Di bawah ini adalah beberapa sistem operasi yang menggunakan kernel hibrida:
• BeOS, sebuah sistem operasi yang memiliki kinerja tinggi untuk aplikasi multimedia.
• Novell NetWare, sebuah sistem operasi yang pernah populer sebagai sistem operasi jaringan berbasis IBM PC dan kompatibelnya.
• Microsoft Windows NT (dan semua keturunannya).



4. Exokernel
Merupakan kernel yang tidak menyediakan sama sekali abstraksi hardware, tapi ia menyediakan sekumpulan pustaka yang menyediakan fungsi-fungsi akses ke perangkat keras secara langsung atau hampir-hampir langsung.
Exokernel biasanya menggunakan library yang disebut dengan libOS untuk melakukan abstraksi. libOS memungkinkan para pembuat aplikasi untuk menulis abstraksi yang berada pada level yang lebih tinggi, seperti halnya abstraksi yang dilakukan pada sistem operasi tradisional, dengan menggunakan cara – cara yang lebih fleksibel, karena aplikasi mungkin memiliki abstraksinya masing-masing. Secara teori, sebuah sistem operasi berbasis Exokernel dapat membuat sistem operasi yang berbeda seperti halnya Linux, UNIX, dan Windows dapat berjalan di atas sistem operasi tersebut.
Salah satu contoh implementasi kernel ialah pada system operasi windows. Pada sistem operasi Windows, kernel ditangani oleh file kernel32.dll. Kernel ini menangani manajemen memori, operasi masukan / keluaran dan interrupt. Ketika boot Windows, kernel32.dll di-load ke dalam spasi protected memory sehingga spasi memorinya tidak digunakan oleh aplikasi lain. Apabila ada aplikasi yang mencoba mengambil spasi memori kernel32.dll, akan muncul pesan kesalahan “invalid page fault”.

Kamis, 05 Mei 2011

INTERNET PROTOKOL

BAB I
PENDAHULUAN
A. LATAR BELAKANG
Di era Millenium baru yang telah kita masuki pada saat ini tentunya sejalan dengan terus berkembangnya pembangunan yang semakin memperbaiki dan melengkapi kekurangan – kekurangan yang selalu nampak pada setiap perkembangan informasi yang dilaksanakan oleh pemerintah ataupun oleh perusahaan-perusahaan swasta.
Berdasarkan hal tersebut tentunya segala aspek kehidupan menjadi pertimbangan tersendiri atas berjalannya kemajuan yang mungkin hanya beberapa pihak atau organisasi tertentu yang memandang perlu mengikutsertakan perkembangan teknologi khususnya pada teknologi komputerisasi yang semakin hari semakin meningkat sejalan dengan kebutuhan pasar yang terus menuntut keefektifan, kemudahan, kecepatan sampai dengan keringanan pembiayaan untuk mendapatkan hasil dan kepuasan yang diinginkan.
Melihat dari begitu pesatnya dunia teknologi khususnya dibidang komputerisasi maka sudah selayaknya hal ini menjadi satu dari sekian alternatif untuk mendapatkan kemudahan yang ditawarkan diatas dalam menunjang pembangunan yang tentunya dipengaruhi oleh teknologi komputer. Semakin kedepan maka semakin baik dan kemudahan yang selalu ditawarkan teknologi ini sehingga semakin dicari serta dibutuhkan oleh para pengguna teknologi informasi ini.
Abad 21 dikenal dengan abad informasi dimulai dengan ditemukannya mesin pintar, yaitu komputer yang makin lama berkembang makin canggih sampai dengan lahirnya perpaduan kreatif antara teknologi komputer dengan telpon, yang populer dengan istilah kawin agung antara komputer dengan telpon.
Saat ini, alih data secara cepat dan akurat menjadi kebutuhan yang mendesak. Hampir setiap orang, atau perusahaan membutuhkan alih informasi untuk mendukung usahanya. Suatu perusahaan mungkin menginginkan bisa memperoleh data dari lapangan secara otomatis. Baik secara real-time maupun tidak. Tentu akan menjadi tidak efesien jika setiap kali ingin melihat atau memperoleh data karyawan harus datang ketempat alat tersebut berada (yang letaknya terpisah dengan kantor pusat). Begitu juga dalam mengendalikan alat, akan sangat meningkatkan efesiensi waktu, tenaga dan biaya jika alat tersebut dapat dikendalikan dari jarak jauh. Komunikasi data melalui jaringan komputer menjadi alternatif yang paling baik, karena memungkinkan alih informasi secara cepat dan akurat.
Dengan perpaduan teknologi ini kita dimungkinkan untuk mengirim dan menerima data sekaligus mengolahnya tanpa dibatasi oleh jarak, dimana saja dan kapan saja sepanjang ditempat tersebut ada fasilitas telpon, hal inilah yang mendasari beberapa perusahaan ataupun instansi pemerintah dalam melaksanakan konsep kerja jarak jauh.
Pada pembahasan tersebut diatas, kita akan menspesifikasikan Protokol TCP/IP, hal tersebut didasari dengan diberikannya kemudahan kepada seorang Administrator pada sebuah perusahaan dalam melaksanakan fungsinya, baik itu sebagai backup operator, auto shut down operator ataupun pengiriman data dan pesan dan lain sebagainya, dan yang terpenting adalah sebagai kendali pada manajemen suatu jaringan.
B. RUMUSAN PERMASALAHAN
Protokol TCP/IP, ini merupakan suatu sistem yang bisa digunakan dalam pengendalian suatu manajemen Jaringan, dimana Administrator dapat dengan mudah mengendalikan dan mengontrol user, aktifitas user serta memberikan kemudahan dalam proses backup data Client atau aktifitas yang lainnya.
Oleh karena itu diperlukan suatu sistem yang mampu melakukan hal tersebut agar si pengguna dan pengelola dapat menikmati fasilitas yang tersedia tersebut secara baik dan terkomputerisasi.


3. MAKSUD DAN TUJUAN
Pengembangan protokol TCP/IP pada manajemen jaringan, memiliki beberapa tujuan, antara lain :
1. Untuk memberikan suatu alternatif sistem pengendalian dan manajemen jaringan dengan menggunakan protokol yang bersifat fleksibel.
2. Memberikan kemudahan pada Administrator jaringan dalam melaksanakan tugas dan fungsinya dalam menangani manajemen jaringan.
3. Sebagai latihan untuk dijadikan titik pandang seberapa jauh pengertian – pengertian yang telah didapat dan menerima pemikiran – pemikiran tentang komputer semenjak awal kuliah hingga tulisan ini dibuat.
4. Disamping itu akan dicoba menjadikan tulisan ini sebagai bahan penulisan ilmiah agar dapat dikembangkan lagi pada karya – karya ilmiah selanjutnya.
5. Sebagai tujuan jangka panjang, agar sistem ini dapat dikembangkan lebih lanjut, sehingga kehandalan serta unjuk kerja dari sistem ini lebih baik.



BAB II
PEMBAHASAN
A. PROTOKOL
Protokol adalah sebuah aturan atau standar yang mengatur atau mengijinkan terjadinya hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer. Protokol dapat diterapkan pada perangkat keras, perangkat lunak atau kombinasi dari keduanya. Pada tingkatan yang terendah, protokol mendefinisikan koneksi perangkat keras. Protokol digunakan untuk menentukan jenis layanan yang akan dilakukan pada internet.
Protokol perlu diutamakan pada penggunaan standar teknis, untuk menspesifikasi bagaimana membangun komputer atau menghubungkan peralatan perangkat keras. Protokol secara umum digunakan pada komunikasi real-time dimana standar digunakan untuk mengatur struktur dari informasi untuk penyimpanan jangka panjang.
Sangat susah untuk menggeneralisir protokol dikarenakan protokol memiliki banyak variasi di dalam tujuan penggunaanya. Kebanyakan protokol memiliki salah satu atau beberapa dari hal berikut:
• Melakukan deteksi adanya koneksi fisik atau ada tidaknya komputer atau mesin lainnya.
• Melakukan metode "jabat-tangan" (handshaking).
• Negosiasi berbagai macam karakteristik hubungan.
• Bagaimana mengawali dan mengakhiri suatu pesan.
• Bagaimana format pesan yang digunakan.
• Yang harus dilakukan saat terjadi kerusakan pesan atau pesan yang tidak sempurna.
• Mendeteksi rugi-rugi pada hubungan jaringan dan langkah-langkah yang dilakukan selanjutnya
• Mengakhiri suatu koneksi.
B. BAGIAN PROTOKOL
Dalam suatu jaringan komputer, terjadi sebuah proses komunikasi antar perangkat yang berlainan sistemnya. Perangkat ini adalah segala sesuatu yang mampu menerima dan mengirim. Untuk berkomunikasi mengirim dan menerima antara dua perangkat dibutuhkan pengertian di antara kedua belah pihak. Pengertian ini lah yang dikatakan sebagai protokol. Jadi protokol adalah himpunan aturan-aturan main yang mengatur komunikasi data. Protokol mendefinisikan apa yang dikomunikasikan bagaimana dan kapan terjadinya komunikasi. Elemen-elemen penting daripada protokol adalah : syntax, semantics dan timing.
• Syntax mengacu pada struktur atau format data, yang mana dalam urutan tampilannya memiliki makna tersendiri. Sebagai contoh, sebuah protokol sederhana akan memiliki urutan pada delapan bit pertama adalah alamat pengirim, delapan bit kedua adalah alamat penerima dan bit stream sisanya merupakan informasinya sendiri.
• Semantics mengacu pada maksud setiap section bit. Dengan kata lain adalah bagaimana bit-bit tersebut terpola untuk dapat diterjemahkan.
• Timing mengacu pada 2 karakteristik yakni kapan data harus dikirim dan seberapa cepat data tersebut dikirim. Sebagai contoh, jika pengirim memproduksi data sebesar 100 Megabits per detik (Mbps) namun penerima hanya mampu mengolah data pada kecepatan 1 Mbps, maka transmisi data akan menjadi overload pada sisi penerima dan akibatnya banyak data yang akan hilang atau musnah.
C. TCP/IP
Protokol Internet (Inggris Internet Protocol disingkat IP) adalah protokol lapisan jaringan (network layer dalam OSI Reference Model) atau protokol lapisan internetwork (internetwork layer dalam DARPA Reference Model) yang digunakan oleh protokol TCP/IP untuk melakukan pengalamatan dan routing paket data antar host-host di jaringan komputer berbasis TCP/IP. Versi IP yang banyak digunakan adalah IP versi 4 (IPv4) yang didefinisikan pada RFC 791 dan dipublikasikan pada tahun 1981, tetapi akan digantikan oleh IP versi 6 pada beberapa waktu yang akan datang.
Protokol IP merupakan salah satu protokol kunci di dalam kumpulan protokol TCP/IP. Sebuah paket IP akan membawa data aktual yang dikirimkan melalui jaringan dari satu titik ke titik lainnya. Metode yang digunakannya adalah connectionless yang berarti ia tidak perlu membuat dan memelihara sebuah sesi koneksi. Selain itu, protokol ini juga tidak menjamin penyampaian data, tapi hal ini diserahkan kepada protokol pada lapisan yang lebih tinggi (lapisan transport dalam OSI Reference Model atau lapisan antar host dalam DARPA Reference Model), yakni protokol Transmission Control Protocol (TCP).
D. LAYANAN YANG DITAWARKAN OLEH PROTOKOL IP
• IP menawarkan layanan sebagai protokol antar jaringan (inter-network), karena itulah IP juga sering disebut sebagai protokol yang bersifat routable. Header IP mengandung informasi yang dibutuhkan untuk menentukan rute paket, yang mencakup alamat IP sumber (source IP address) dan alamat IP tujuan (destination IP address). Anatomi alamat IP terbagi menjadi dua bagian, yakni alamat jaringan (network address) dan alamat node (node address/host address). Penyampaian paket antar jaringan (umumnya disebut sebagai proses routing), dimungkinkan karena adanya alamat jaringan tujuan dalam alamat IP. Selain itu, IP juga mengizinkan pembuatan sebuah jaringan yang cukup besar, yang disebut sebagai IP internetwork, yang terdiri atas dua atau lebih jaringan yang dihubungkan dengan menggunakan router berbasis IP.
• IP mendukung banyak protokol klien, karena memang IP merupakan "kurir" pembawa data yang dikirimkan oleh protokol-protokol lapisan yang lebih tinggi dibandingkan dengannya. Protokol IP dapat membawa beberapa protokol lapisan tinggi yang berbeda-beda, tapi setiap paket IP hanya dapat mengandung data dari satu buah protokol dari banyak protokol tersebut dalam satu waktu. Karena setiap paket dapat membawa satu buah paket dari beberapa paket data, maka harus ada cara yang digunakan untuk mengidikasikan protokol lapisan tinggi dari paket data yang dikirimkan sehingga dapat diteruskan kepada protokol lapisan tinggi yang sesuai pada sisi penerima. Mengingat klien dan server selalu menggunakan protokol yang sama untuk sebuah data yang saling dipertukarkan, maka setiap paket tidak harus mengindikasikan sumber dan tujuan yang terpisah. Contoh dari protokol-protokol lapisan yang lebih tinggi dibandingkan IP adalah Internet Control Management Protocol (ICMP), Internet Group Management Protocol (IGMP), User Datagram Protocol (UDP), dan Transmission Control Protocol (TCP).
• IP mengirimkan data dalam bentuk datagram, karena memang IP hanya menyediakan layanan pengiriman data secara connectionless serta tidak andal (unreliable) kepada protokol-protokol yang berada lebih tinggi dibandingkan dengan protokol IP. Pengirimkan connectionless, berarti tidak perlu ada negosiasi koneksi (handshaking) sebelum mengirimkan data dan tidak ada koneksi yang harus dibuat atau dipelihara dalam lapisan ini. Unreliable, berarti IP akan mengirimkan paket tanpa proses pengurutan dan tanpa acknowledgment ketika pihak yang dituju telah dapat diraih. IP hanya akan melakukan pengiriman sekali kirim saja untuk menyampaikan paket-paket kepada hop selanjutnya atau tujuan akhir (teknik seperti ini disebut sebagai "best effort delivery"). Keandalan data bukan merupakan tugas dari protokol IP, tapi merupakan protokol yang berada pada lapisan yang lebih tinggi, seperti halnya protokol TCP.
• Bersifat independen dari lapisan antarmuka jaringan (lapisan pertama dalam DARPA Reference Model), karena memang IP didesain agar mendukung banyak komputer dan antarmuka jaringan. IP bersifat independen terhadap atribut lapisan fisik, seperti halnya pengabelan, pensinyalan, dan bit rate. Selain itu, IP juga bersifat independen terhadap atribut lapisan data link seperti halnya mekanisme Media access control (MAC), pengalamatan MAC, serta ukuran frame terbesar. IP menggunakan skema pengalamatannya sendiri, yang disebut sebagai "IP address", yang merupakan bilangan 32-bit dan independen terhadap skema pengalamatan yang digunakan dalam lapisan antarmuka jaringan.
• Untuk mendukung ukuran frame terbesar yang dimiliki oleh teknologi lapisan antarmuka jaringan yang berbeda-beda, IP dapat melakukan pemecahan terhadap paket data ke dalam beberapa fragmen sebelum diletakkan di atas sebuah saluran jaringan. Paket data tersebut akan dipecah ke dalam fragmen-fragmen yang memiliki ukuran maximum transmission unit (MTU) yang lebih rendah dibandingkan dengan ukuran datagram IP. Proses ini dinamakan dengan fragmentasi ([[Fragmentasi paket jaringan|fragmentation). Router atau host yang mengirimkan data akan memecah data yang hendak ditransmisikan, dan proses fragmentasi dapat berlangsung beberapa kali. Selanjutnya host yang dituju akan menyatukan kembali fragmen-fragmen tersebut menjadi paket data utuh, seperti halnya sebelum dipecah.
• Dapat diperluas dengan menggunakan fitur IP Options dalam header IP. Fitur yang dapat ditambahkan contohnya adalah kemampuan untuk menentukan jalur yang harus diikuti oleh datagram IP melalui sebuah internetwork IP.
E. DATAGRAM IP
Paket-paket data dalam protokol IP dikirimkan dalam bentuk datagram. Sebuah datagram IP terdiri atas header IP dan muatan IP (payload), sebagai berikut:
• Header IP: Ukuran header IP bervariasi, yakni berukuran 20 hingga 60 byte, dalam penambahan 4-byte. Header IP menyediakan dukungan untuk memetakan jaringan (routing), identifikasi muatan IP, ukuran header IP dan datagram IP, dukungan fragmentasi, dan juga IP Options.
• Muatan IP: Ukuran muatan IP juga bervariasi, yang berkisar dari 8 byte hingga 65515 byte.
Sebelum dikirimkan di dalam saluran jaringan, datagram IP akan "dibungkus" dengan header protokol lapisan antarmuka jaringan dan trailer-nya, untuk membuat sebuah frame jaringan.

F. HEADER IP
Header IP terdiri atas beberapa field sebagai berikut:


G. Komunikasi antara aplikasi.
Jika satu aplikasi ingin berkomunikasi dengan yang lain melalui TCP, ia akan mengirimkan permintaan komunikasi. Permintaan ini harus dikirim ke alamat yang tepat. Setelah "jabat tangan" antara dua aplikasi, TCP akan mendirikan "full-duplex" komunikasi antara dua aplikasi.
The "full-duplex" komunikasi akan menempati garis komunikasi antara dua komputer sampai ditutup oleh salah satu dari dua aplikasi.
UDP sangat mirip dengan TCP, namun sederhana dan kurang dapat diandalkan
1. IP adalah untuk komunikasi antar komputer.
IP adalah "koneksi-kurang" protokol komunikasi.
IP tidak menempati garis komunikasi antara dua komputer. IP mengurangi kebutuhan untuk saluran jaringan. Setiap baris dapat digunakan untuk komunikasi antar komputer yang berbeda pada saat yang sama.
Dengan IP, pesan (atau data lain) dipecah menjadi kecil independen "paket" dan dikirim antara komputer melalui internet.
IP bertanggung jawab untuk "routing" paket masing-masing untuk tujuan yang benar.
2. IP Router
Ketika sebuah paket IP yang dikirimkan dari komputer, tiba pada router IP.
Router IP bertanggung jawab untuk "routing" paket ke tujuan yang benar, secara langsung atau melalui router lain.
Path paket akan mengikuti mungkin berbeda dari paket lain dari komunikasi yang sama. Router bertanggung jawab untuk hak pengalamatan, tergantung pada volume lalu lintas, kesalahan dalam jaringan, atau parameter lainnya.
Sambungan-Analogi Kurang
Berkomunikasi melalui IP adalah seperti mengirimkan surat panjang sebagai sejumlah besar kartu pos kecil, masing-masing mencari jalan sendiri (sering berbeda) ke penerima.
TCP / IP
TCP / IP adalah TCP dan IP bekerja sama.
TCP menangani komunikasi antara perangkat lunak aplikasi Anda (misalnya browser Anda) dan perangkat lunak jaringan Anda.
IP menangani komunikasi dengan komputer lain.
TCP bertanggung jawab untuk memecah data ke dalam paket IP sebelum dikirim, dan untuk perakitan paket ketika mereka tiba.
IP bertanggung jawab untuk pengiriman paket ke tujuan yang benar
3. Alamat IP
Setiap komputer harus memiliki alamat IP sebelum dapat terhubung ke Internet.
Setiap paket IP harus memiliki sebuah alamat sebelum dapat dikirim ke komputer lain.
Ini adalah alamat IP: 192.68.20.50
Ini mungkin alamat IP yang sama: www.w3schools.com
Alamat IP Berisi 4 Angka.
Setiap komputer harus memiliki alamat IP yang unik.
Ini adalah alamat IP: 182.0.226.127
TCP / IP menggunakan empat nomor-nomor untuk alamat komputer. Angka-angka selalu antara 0 dan 255.
alamat IP biasanya ditulis sebagai empat angka yang dipisahkan oleh titik, seperti ini: 192.168.1.50.
32 Bits = 4 Bytes
Dalam istilah komputer, TCP / IP menggunakan pengalamatan 32 bit. Satu byte adalah 8 bit. TCP / IP menggunakan 4 bytes.
Satu byte dapat berisi 256 nilai yang berbeda:
00000000, 00000001, 00000010, 00000011, 00000100, 00000101, 00000110, 00000111, 00001000 dan semua jalan sampai ke 11111111 ........
Sekarang Anda tahu mengapa TCP / alamat IP adalah empat nomor-nomor antara 0 dan 255.
4. Nama Domain
Sebuah nama jauh lebih mudah untuk diingat daripada nomor 12 digit. Nama yang digunakan untuk TCP / alamat IP yang disebut nama domain.
w3schools.com adalah nama domain.
Bila Anda alamat sebuah situs web, seperti http://www.w3schools.com, nama ini diterjemahkan ke nomor dengan Domain Name Server (DNS).
Di seluruh dunia, server DNS yang terhubung ke Internet. DNS server bertanggung jawab untuk menerjemahkan nama domain ke TCP / alamat IP.
Ketika nama domain baru yang terdaftar bersama dengan alamat TCP / IP, server DNS di seluruh dunia diperbarui dengan informasi ini.
H. MACAM-MACAM PROTOCOL INTERNET
HTTP - Hyper Text Transfer Protocol
HTTP menangani komunikasi antara web server dan web browser.
HTTP digunakan untuk mengirimkan permintaan dari klien web (browser) ke web server, kembali konten web (halaman web) dari server ke klien.
HTTPS - HTTP Secure
HTTPS menangani komunikasi yang aman antara web server dan web browser.
HTTPS biasanya menangani transaksi kartu kredit dan data sensitif lainnya.
SSL - Secure Socket Layer
Protokol SSL digunakan untuk enkripsi data untuk transmisi data yang aman.
SMTP - Simple Mail Transfer Protocol
SMTP digunakan untuk transmisi e-mail.
MIME - Multi-purpose Internet Mail Extensions

Protokol MIME memungkinkan SMTP mengirimkan file multimedia termasuk suara, audio, dan data biner di jaringan TCP / IP.
IMAP - Internet Message Access Protocol
IMAP digunakan untuk menyimpan dan mengambil e-mail.
POP - Post Office Protocol
POP digunakan untuk men-download e-mail dari server e-mail ke komputer pribadi.
FTP - File Transfer Protocol
FTP menangani pengiriman file antar komputer.
NTP - Network Time Protocol
NTP digunakan untuk sinkronisasi waktu (jam) antara komputer.
DHCP - Dynamic Host Configuration Protocol
DHCP digunakan untuk alokasi alamat IP dinamis ke komputer dalam jaringan.
SNMP - Network Management Protocol Wikipedia
SNMP digunakan untuk administrasi jaringan komputer.
LDAP - Directory Access Protocol Ringan
LDAP digunakan untuk mengumpulkan informasi tentang pengguna dan alamat e-mail dari internet.
ICMP - Internet Control Protocol pesan
ICMP menangani kesalahan-penanganan dalam jaringan.
ARP - Address Resolution Protocol
ARP digunakan oleh IP untuk mencari alamat hardware dari kartu jaringan komputer berdasarkan alamat IP.
RARP - Address Resolution Protocol Reverse
RARP digunakan oleh IP untuk mencari alamat IP berdasarkan alamat hardware dari kartu jaringan komputer.
BOOTP - Protokol Boot
BOOTP digunakan untuk boot (mulai) komputer dari jaringan.
PPTP - Point to Point Tunneling Protokol
PPTP digunakan untuk pengaturan koneksi (terowongan) antara jaringan pribadi.
SMTP - Simple Mail Transfer Protocol
Protokol SMTP digunakan untuk transmisi e-mail. SMTP mengurus mengirimkan email Anda ke komputer lain.
Biasanya email Anda dikirim ke server email (SMTP server), dan kemudian ke server lain atau server, dan akhirnya ke tujuannya.
SMTP hanya bisa mengirimkan teks murni. Tidak dapat mengirimkan data biner seperti gambar, suara atau film.
SMTP menggunakan protokol MIME untuk mengirim data biner di jaringan TCP / IP. Protokol MIME mengkonversi data biner ke teks murni.


BAB III
PENUTUP

KESIMPULAN
TCP/IP (singkatan dari Transmission Control Protocol/Internet Protocol) adalah standar komunikasi data yang digunakan oleh komunitas internet dalam proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan Internet. Protokol ini tidaklah dapat berdiri sendiri, karena memang protokol ini berupa kumpulan protokol (protocol suite). Protokol ini juga merupakan protokol yang paling banyak digunakan saat ini. Data tersebut diimplementasikan dalam bentuk perangkat lunak (software) di sistem operasi. Istilah yang diberikan kepada perangkat lunak ini adalah TCP/IP stack Setiap lapisan yang dimiliki oleh kumpulan protokol (protocol suite) TCP/IP diasosiasikan dengan protokolnya masing-masing.



DAFTAR PUSTAKA

http://id.wikipedia.org/wiki/Protokol_%28komputer%29
http://id.wikipedia.org/wiki/Protokol_Internet#Field-field_dalam_header_IP_yang_berguna_untuk_fragmentasi
http://gie-zone.blogspot.com/2010/03/protokol-internet.html
http://teknik-informatika.com/internet-protocol/

Selasa, 03 Mei 2011

LOGIKA DAN ALGORITMA

1. LOGIKA

Kata “logika” sering terdengar dalam percakapan sehari-hari, biasanya dalam arti “menurut akal”, seperti kalau orang berkata “menurut logikanya ia harus berterima kasih, bukan malah marah-marah”. Akan tetapi “logika” sebagai istilah berarti “suatu metode atau teknik yang diciptakan untuk meneliti ketepatan penalaran”. Maka untuk memahami apakah logika itu, kita harus mengetahui pengertian yang jelas tentang penalaran. Penalaran adalah suatu bentuk pemikiran. Adapun bentuk-bentuk pemikiran yang lain, mulai yang paling sederhana adalah pengertian atau konsep, proposisi atau pernyataan, dan penalaran. Tidak ada proposisi tanpa pengertian, dan tidak ada penalaran tanpa proposisi. Maka untuk memahami penalaran, ketiga bentuk pemikiran tersebut harus dipahami bersama-sama.

DEFENISI LOGIKA
1. Penalaran atau bentuk pemikiran
2. ilmu yang diberikan prinsip-prinsip yang harus diikuti agar dapat berfikir valid menurut aturan

LOGIKA DALAM ILMU PENGETAHUAN
Logika merupakan sebuah ilmu pengetahuan dimana objek materialnya adalah berpikir(khususnya penalaran /proses penalaran) dan objek formal logika adalah berfikir/penalaran yang di tinjau dari segi ketepatanya.
• Logika sebagai matematika murni
Logika masuk kedalam kategori matematika murni karena matematika adalh logika yang tersistematisasi ,matematika adalah pendekatan logika pada metode ilmu ukur yang menggunakan tanda tanda/symbol symbol matematika (logika simbolik).


KEGUNAAN LOGIKA
1. Membentuk setiap orang yang mempelajari logika untuk berfikir secara rasional, kritis, lurus, ketat, tertib, dan metodis.
2. Meningkatkan kemampuan secara format dan objektif.
3. Menambah kecerdasan dan meningkatkan kemapuan berfikir secara tajam dan mandiri.
4. Memaksa dan mendorong untuk berpikir sendiri dengan menggunakan akses akses sistematis.
5. Meningkatkan cinta akan kebenaran dan menghindari kesalahan befikir, kekeliruan, serta kesesata.
6. Mampu melakukan analisis terhadapsuatu kejadian.


DASAR DASAR LOGIKA

1. Pengertian
Kita mulai, misalnya dengan observasi empirik atau pengamatan indera, mata melihat ayam berwarna putih, telinga mendengar suara berkokok. Bersamaan dengan aktivitas indera tersebut terjadilah aktivitas pikiran sehingga membentuk pengertian. Dalam hal ini pengertian yang terbentuk adalah “ayam putih sedang berkokok”. Betul tidaknya suatu pengertian tergantung dari tepat tidaknya cara melakukan observasi, dan ini adalah masalah fisik, masalah indera, bukan masalah pikiran. Sekali indera mengobservasi, terbentuklah pengertian yang bagi pikiran merupakan data dalam proses berfikir lebih lanjut. Karena berasal dari pengalaman empiric, maka pengertian itu juga disebut data empiric. Juga disebut data psikologik, karena terbentuk melalui proses psikologik, yaitu pengamatan indera.
Jadi, pengertian adalah sesuatu yang abstrak. Oleh karena itu untuk dapat mengetahuinya pengertian harus disampaikan dengan lambang yaitu bahasa.

2. Proposisi
Bersamaan dengan terjadinya observasi empiric didalam pikiran, tidak hanya terbentuk pengertian, akan tetapi juga terjadi perangkaian dari kata-kata. Tidak pernah ada pengertian yang berdiri sendiri.

Perangkaian pengertian itulah yang disebut dengan proposisi. Dalam proses pembentukan proposisi terjadi dua hal, yaitu :
1. Proses pembentukan proposisi terjadi begitu rupa, sehingga ada pengertian yang menerangkan tentang pengertian yang lain, atau ada pengertian yang diingkari oleh pengertian yang lain. Dengan menggunakan contoh ayam diatas, proses perangkaian kata menghasilkan proposisi “ayam putih itu berkokok”. “Berkokok” menerangkan tentang “ayam putih”. Pengertian yang menerangkan itu disebut dengan “predikat”, sedang pengertian yang diterangkan disebut dengan “subyek”. Kalau predikat disingkat dengan “P” dan subyek disingkat dengan “S”, maka pola proposisi ditulis P=S. Kalau dalam proses perangkaian itu terjadi pengingkaran, maka proposisi yang terbentuk adalah “ayam putih itu tidak berkokok” dan pola proposisi ditulis P¹S.
2. Dalam proses pembentukan proposisi itu sekaligus terjadi pengakuan bahwa ayam putih itu memang berkokok., atau bahwa ayam putih itu memang tidak berkokok. Dari sini jelaslah bahwa proposisi itu mengandung sifat benar atau salah. Sebaliknya pengertian itu tidak ada hubungannya dengan benar atau salah.

Contoh penentuan proposisi
Pernyataan-pernyataan berikut ini,

(a) 6 adalah bilangan genap.
(b) Soekarno adalah Presiden Indonesia yang pertama.
(c) 2 + 2 = 4.
(d) Ibukota Provinsi Jawa Barat adalah Semarang.
(e) 12 ³ 19.
(f) Kemarin hari hujan.
(g) Suhu di permukaan laut adalah 21 derajat Celcius.
(h) Pemuda itu tinggi.
(i) Kehidupan hanya ada di planet Bumi.

semuanya merupakan proposisi. Proposisi a, b, dan c bernilaibenar, tetapi proposisi d
salah karena ibukota Jawa Barat seharusnya adalah Bandungdan proposisi e bernilai
salah karena seharusnya 12 £ 19. Proposisi f sampai i memang tidak dapat langsung ditetapkan kebenarannya, namun satu hal yang pasti,proposisi-proposisi tersebut tidak mungkin benar dan salah sekaligus. Kita bisa menetapkannilai proposisi tersebut benar atau salah. Misalnya, proposisi f bisa kita andaikan benar(hari kemarin memang hujan) atau salah (hari kemarin tidak hujan). Demikian pula halnyauntuk proposisi g dan h. Proposisi i bisa benar atau salah, karena sampai saat inibelum ada ilmuwan yang dapat memastikan kebenarannya.


3. Mengkombinasikan Proposisi
Kita dapat membentuk proposisi baru dengan caramengkombinasikan satu atau lebih proposisi. Operator yang digunakan untuk mengkombinasikanproposisi disebut operator logika. Operator logika dasar yang digunakan adalahdan (and), atau (or), dan tidak (not). Dua operator pertama dinamakanoperator biner karena operator tersebut mengoperasikan dua buah proposisi,sedangkan operator ketiga dinamakan operator uner karena ia hanya membutuhkan satubuah proposisi. Proposisi baru yang diperoleh dari pengkombinasian tersebutdinamakan proposisi majemuk (compound proposition). Proposisi yang bukanmerupakan kombinasi proposisi lain disebut proposisi atomik. Dengan kata lain,proposisi majemuk disusun dari proposisi-proposisi atomik. Metodepengkombinasian proposisi dibahas oleh matematikawan Inggris yang bernama George Boolepada tahun 1854 di dalam bukunya yang terkenal, The Laws of Thought.Proposisi majemuk ada tiga macam, yaitu konjungsi, disjungsi, dan ingkaran.Ketiganya didefinisikan sebagai berikut:

Misalkan p dan q adalah proposisi. Konjungsi(conjunction) p dan q,
dinyatakan dengan notasi p Ù q, adalah proposisi
p dan q
Disjungsi (disjunction) p dan q, dinyatakan dengan notasi pÚ q, adalah proposisi
p atau q
Ingkaran atau (negation) dari p, dinyatakan dengan notasi~p, adalah proposisi
tidak p


Catatan:
1. Beberapa literatur menggunakan notasi “Øp”, “ p ”, atau“not p” untuk menyatakan ingkaran.
2. Kata “tidak” dapat dituliskan di tengah pernyataan. Jikakata “tidak” diberikan di awal pernyataan maka ia biasanya disambungkan dengan kata“benar” menjadi “tidak benar”. Kata “tidak” dapat juga digantidengan “bukan” bergantung pada rasa bahasa yang tepat untuk pernyataan tersebut.

Berikut contoh-contoh proposisi majemuk dan notasisimboliknya. Ekspresi
proposisi majemuk dalam notasi simbolik disebut jugaekspresi logika.
Contoh 1.3
Diketahui proposisi-proposisi berikut:
p : Hari ini hujan
q : Murid-murid diliburkan dari sekolah
maka
p Ù q : Hari ini hujan dan murid-murid diliburkan darisekolah
p Ú q : Hari ini hujan atau murid-murid diliburkan darisekolah
~p : Tidak benar hari ini hujan
(atau dalam kalimat lain yang lebih lazim: Hari ini tidakhujan)

Apa yang dinyatakan dalam proposisi seperti diatas adalah fakta, yaitu observasi yang dapat diverifikasi atau diuji kecocokannya secara empirik dengan menggunakan indera. Proposisi yang terjadi berdasarkan observasi empirik disebut dengan proposisi empirik. Sedangkan proposisi yang sifat kebenaran atau kesalahannya langsung nampak kepada pikiran dan oleh karenanya harus diterima disebut dengan proposisi mutlak. Lambang proposisi dalah bahasa adalah kalimat berita. Hanya kalimat beritalah yang mempunyai sifat benar atau salah.

4. Penalaran
Pembahasan kita mulai dari proses berfikir dengan bertolak dari pengamatan indera atau observasi empirik. Prose situ didalam pikiran menghasilkan sejumlah pengertian dan proposisi sekaligus. Berdasarkan pengamatan-pengamatan indera yang sejenis, pikiran menyusun proposisi-proposisi yang sejenis pula. Misalnya: apel 1 berwarna hijau rasanya asam; apel 2 berwarna hijau rasanya asam; apel 3 berwarna hijau rasanya asam; dan seterusnya sampai apel ke 10. Kalau orang yang mengamati itu sadar akan kesamaan diantara kesepuluh proposisi itu, ia akan mengharapkan, bahwa apel-apel berwarna hijau lainpun rasanya asam.
Apa yang terjadi dalam proses diatas ialah, bahwa berdasarkan sejumlah proposisi yang diketahui atau dianggap benar, orang akan menyimpulkan sebuah proposisi baru yang sebelumnya tidak diketahui. Proses inilah yang disebut dengan penalaran. Kalau disusun secara formal bentuk penalaran itu menjadi sebagai berikut.
Apel 1 berwarna hijau rasanya asam
Apel 2 berwarna hijau rasanya asam
Apel 3 berwarna hijau rasanya asam
Apel 10 berwarna hijau rasanya asam
Jadi, Semua apel berwarna hijau rasanya asam
Dalam penalaran ini proposisi-proposisi yang menjadi dasar penyimpulan disebut antesedens atau premis, sedangkan kesimpulannya disebut konklusi atau konsekuens. Diantara premis dan konklusi ada hubungan tertentu yang disebut dengan konsekuensi.
Penalaran yang konklusinya bermakna lebih luas dari premisnya disebut dengan penalaran induktif, sedangkan penalaran yang premisnya bermakna lebih luas dari konklusinya disebut dengan penalaran deduktif.
Contoh penalaran deduktif:
Semua bintang film memakai sabun lux
Jadi, sebagian pemakai sabun lux adalah bintang film.
Penalaran itu erat dan dekat sekali artinya dengan penyimpulan, argumen dan bukti. Proses penalaran meliputi aktivitas mencari proposisi-proposisi untuk disusun menjadi premis, menilai hubungan proposisi-proposisi didalam premis itu dan menentukan konklusinya.
Kalau penalaran itu aktivitas pikiran yang abstrak, maka argumen ialah lambangnya yang berbentuk bahasa atau bentuk-bentuk lainnya. Jadi kata itu lambang pengertian, kalimat itu lambang proposisi, maka argumen adalah lambang penalaran.
Akhirnya yang disebut dengan bukti ialah argumen yang berhasil menentukan kebenaran konklusi dari premis.

DASAR-DASAR PENALARAN
Konsep dan term
Akal manusia apabila menangkap sesuatu terwujud dengan membuat konsep atau ide atau juga pengertian. Dengan demikian, buah atau hasil dari tangkapan akal disebut dengan istilah “konsep”. Jadi ide dan konsep dalam logika adalah sama artinya. Konsep atau ide atau juga pengertian adalah bersifat kerohanian dan dapat diungkapkan ke dalam bentuk kata atau istilah atau juga beberapa kata. Ungkapan pengertian dalam bentuk kata atau istilah disebut dengan “term”.
Term sebagai ungkapan konsep jika terdiri atas satu kata atau satu istilah maka term itu dinamakan term sederhana atau term simpel, dan jika terdiri atas beberapa kata maka term itu dinamakan term komposit atau term kompleks. Dan kata sebagai suatu simbol untuk menyatakan konsep dibedakan antara dua macam, yaitu kata kategorimatis dan kata sinkategorimatis.
Setiap term mempunyai konotasi atau isi. Konotasi adalah keseluruhan arti yang dimaksudkan oleh suatu term, yaitu kesatuan antara unsur dasar atau term yang lebih luas dengan sifat pembeda yang bersama-sama membentuk suatu pengertian. Konotasi secara singkat dapat dinyatakan merupakan suatu uraian tentang pembatasan arti atau definisi sehingga konotasi term adalah suatu definisi karena menunjukkan genus (jenis) dengan sifat pembeda.
Setiap term mempunyai denotasi atau lingkungan. Denotasi adalah keseluruhan hal yang ditunjuk oleh term atau keseluruhan hal sejauh mana term itu dapat diterapkan. Denotasi atau lingkungan atau sering juga disebut dengan luas, adalah mencakup semua hal yang dapat ditunjuk atau lingkungan yang dimaksudkan oleh term.
Denotasi term ini menunjukkan adanya suatu himpunan karena sejumlah hal-hal yang ditunjuk itu menjadi satu kesatuan dengan ciri tertentu (sifat-sifat tertentu). Jadi, dengan adanya sifat-sifat yang diuraikan oleh konotasi (isi term) maka dapatlah dihimpun beberapa hal tertentu menjadi satu kesatuan. Dan dengan menunjukkan beberapa hal maka denotasi berhubungan dengan kuantitas.
Konotasi dan denotasi term, mempunyai hubungan yang erat tidak dapat terlepaskan, berbentuk hubungan berbalikan (dasar balik) jika yang satu bertambah maka yang lain akan berkurang, demikian sebaliknya. Dalam hal ini terdapat 4 kemungkinan sebagai berikut. (1) Makin bertambah konotasi makin berkurang denotasi. (2) Makin berkurang konotasi makin bertambah denotasi. (3) Makin bertambah denotasi makin berkurang konotasi. (4) Makin berkurang denotasi makin bertambah konotasi.



Berbagai Macam Term
Term maupun konsep banyak sekali macam-macamnya demikian juga pembagiannya. Berbagai macam dikelompokkan atas 4 macam, yakni pembagian term menurut konotasinya, pembagian term menurut denotasinya, pembagian menurut cara beradanya sesuatu, dan pembagian menurut cara menerangkan sesuatu.
Berdasarkan konotasi, term dibedakan atas term konkret dan term abstrak. Di samping itu keduanya ada yang berada dalam lingkungan hakikat, dan ada yang berada dalam lingkungan sifat.
1. Hakikat konkret: yaitu menunjuk ke-”hal”-nya suatu kenyataan yang berkualitas dan bereksistensi.
2. Hakikat abstrak: menyatakan suatu kualitas yang tidak bereksistensi atau tidak ada dalam ruang dan waktu.
3. Sifat konkret: yaitu menunjuk pen-”sifatan”-nya suatu kenyataan yang berkualitas dan bereksistensi.
4. Sifat abstrak: yaitu menyatakan pensifatan yang terlepas dari eksistensi atau tidak ada dalam ruang dan waktu.
Berdasarkan denotasi term, dapat dibedakan term umum dan term khusus. Term umum dibedakan atas 2 macam sebagai berikut. (1) Universal, yaitu sifat umum yang berlaku di dalamnya tidak terbatas oleh ruang dan waktu. (2) Kolektif, yaitu sifat umum yang berlaku di dalamnya menunjuk suatu kelompok tertentu sebagai kesatuan. Term khusus juga dibedakan atas dua macam sebagai berikut. (1) Partikular, yaitu sifat khusus yang berlaku hanya menunjuk sebagian tidak tertentu. (2) Singular, yaitu sifat khusus hanya menunjuk pada satu hal atau suatu himpunan yang mempunyai hanya satu anggota.
Predikamen yang dimaksudkan ialah cara beradanya sesuatu. Term yang paling luas adalah term “ada” atau term “yang ada”. Term “ada” selanjutnya dibagi dalam 2 macam, yaitu ada yang tidak terbatas dan ada yang terbatas. Sesuatu yang ada (ada terbatas) pasti ada unsur hakikat dan unsur sifat atau menurut filsafat dinyatakan secara singkat terdiri atas substansi dan aksidensia. Substansi adalah hakikat sesuatu yang adanya terdapat di dalam diri sendiri sebagai pendukung sifat-sifat. Aksidensia merupakan kumpulan sifat zat, yang ada sembilan sifat, yaitu kuantitas, kualitas, aksi, pasi, relasi, ruang, waktu, posisi, keadaan.
Predikabel yang dimaksudkan ialah cara menerangkan sesuatu. Term ditinjau cara menjelaskan dibedakan menjadi 5 macam, yaitu genus, spesies, diferensia, propium, dan aksiden. Genus ialah himpunan golongan-golongan menunjukkan hakikat yang berbeda bentuk tetapi terpadu oleh persamaan sifat. Spesies ialah himpunan sesuatu yang menunjukkan hakikat bersamaan bentuk maupun sifatnya sehingga dapat memisahkan dari lain-lain golongan. Diferensia ialah sifat pembeda yang menunjukkan hakikat suatu golongan sehingga terwujud kelompok diri. Propium ialah sifat khusus sebagai predikat yang niscaya terlekat pada hakikat sesuatu diri sehingga dimiliki oleh seluruh anggota golongan. Aksiaden ialah sifat kebetulan sebagai predikat yang tidak bertalian dengan hakikat sesuatu diri sehingga tidak dimiliki oleh seluruh anggota golongan.
Dengan dasar lima predikabel tersebut dalam menjelaskan sesuatu, apa yang dijelaskan tempatkan sebagai spesies, kemudian mencari hubungan genus dan diferensianya, dan jika tidak mendapatkan dicari hubungan genus dengan propiumnya, dan jangan menggunakan hubungan genus dengan aksiden.


PRINSIP-PRINSIP PENALARAN

Prinsip-prinsip penalaran atau aksioma penalaran merupakan dasar semua penalaran yang terdiri atas tiga prinsip yang kemudian di tambah satu sebagai pelengkap. Aksioma atau prinsip dasar dapat didefinisikan: suatu pernyataan mengandung kebenaran universal yang kebenarannya itu sudah terbukti dengan sendirinya. Prinsip-prinsip penalaran yang dimaksudkan adalah: prinsip identitas, prinsip nonkontradiksi, dan prinsip eksklusi tertii, dan sebagai tambahan pelengkap prinsip identitas adalah prinsip cukup alasan.
Prinsip identitas menyatakan: “sesuatu hal adalah sama dengan halnya sendiri”. Sesuatu yang disebut p maka sama dengan p yang dinyatakan itu sendiri bukan yang lain. Dalam suatu penalaran jika sesuatu hal diartikan sesuatu p tertentu maka selama penalaran itu masih berlangsung tidak boleh diartikan selain p, harus tetap sama dengan arti yang diberikan semula atau konsisten. Prinsip identitas menuntut sifat yang konsisten dalam suatu penalaran jika suatu himpunan beranggotakan sesuatu maka sampai kapan pun tetap himpunan tersebut beranggotakan sesuatu tersebut.
Prinsip nonkontradiksi menyatakan: “sesuatu tidak mungkin merupakan hal tertentu dan bukan hal tertentu dalam suatu kesatuan”, Prinsip ini menyatakan juga bahwa dua sifat yang berlawanan penuh (secara mutlak) tidak mungkin ada pada suatu benda dalam waktu dan tempat yang sama. Dalam penalaran himpunan prinsip nonkontradiksi sangat penting, yang dinyatakan bahwa sesuatu hal hanyalah menjadi anggota himpunan tertentu atau bukan anggota himpunan tersebut, tidak dapat menjadi anggota 2 himpunan yang berlawanan penuh. Prinsip nonkontradiksi memperkuat prinsip identitas, yaitu dalam sifat yang konsisten tidak ada kontradiksi di dalamnya.
Prinsip eksklusi tertii menyatakan bahwa “sesuatu jika dinyatakan sebagai hal tertentu atau bukan hal tertentu maka tidak ada kemungkinan ketiga yang merupakan jalan tengah”. Prinsip eksklusi tertii menyatakan juga bahwa dua sifat yang berlawanan penuh (secara mutlak) tidak mungkin kedua-duanya dimiliki oleh suatu benda, mestilah hanya salah satu yang dapat dimilikinya sifat p atau non p. Demikian juga dalam penalaran himpunan dinyatakan bahwa di antara 2 himpunan yang berbalikan tidak ada sesuatu anggota berada di antaranya, tidak mungkin ada sesuatu di antara himpunan H dan himpunan non H sekaligus. Prinsip ketiga ini memperkuat prinsip identitas dan prinsip nonkontradiksi, yaitu dalam sifat yang konsisten tidak ada kontradiksi di dalamnya, dan jika ada kontradiksi maka tidak ada sesuatu di antaranya sehingga hanyalah salah satu yang diterima.
Prinsip cukup alasan menyatakan: “suatu perubahan yang terjadi pada sesuatu hal tertentu mestilah berdasarkan alasan yang cukup, tidak mungkin tiba-tiba berubah tanpa sebab-sebab yang mencukupi”. Prinsip cukup alasan ini dinyatakan sebagai tambahan bagi prinsip identitas karena secara tidak langsung menyatakan bahwa sesuatu benda mestilah tetap tidak berubah, tetap sebagaimana benda itu sendiri jika terjadi suatu perubahan maka perubahan itu mestilah ada sesuatu yang mendahuluinya sebagai penyebab perubahan itu.

Contoh soal
- Ayam suka bernyanyi
- Bernyanyi itu menghibur hati
Jadi, ayam juga menghibur hati
Contoh ini penalarannya valid tapi kesimpulannya salah. Penalaran tersebut valid karena diturunkan dari premis yang tersedia. Namun kesimpulannya salah sebab baik premis maupun kesimpulannya tidak sesuai dengan fakta. Ataupun dengan kata lain tidak ada korespondensi antara pernyataan dan fakta.



2. LOGIKA PROFESIONAL


DEFINISI
• Logika adalah suatu system berbasis proposisi.
• Suatu proposisi adalah suatu pernyataan (statement) yang dapat ber”nilai” Benar (true) atau Salah (false) dan tidak keduanya.
• Dikatakan bahwa nilai kebenaran daripada suatu proposisi adl salah satu dari benar (true disajikan dng T) atau salah (false disajikan dengan F).
• Dalam untaian digital (digital circuits) disajikan dng 0 dan 1
Proposisi adalah kalimat deklaratif (atau pernyata an) yang memiliki hanya satu nilai kebenaran yaitu banar saja atau salah saja, akan tetapi tidak keduanya.
Proposisi yang bukan hasil kombinasi dari proposisi-proposisi disebut atom. Jika atom-atom akan dikombinasikan untuk memperoleh proposisi baru maka diperlukan operator logika atau operator sambung yang dilambangkan dng simbol:
• Ø : “not”, atau “negasi” ( simbol lain adl ~ )
• Ù : “and”, atau “konjungsi” ( simbol lain adl &)
• Ú : “or” , atau “disjungsi” atau “inclusive or”
• Å : “xor”, atau “exclusive or”
• ®: “implies”, atau “Jika … maka…”, atau “implikasi kondisional”
• . «: “jika dan hanya jika”, atau “bikondisional”

LOGIKA PROPOSISIONAL
Penggandeng Logis (Logical Connectives)

1. Negasi (not)
Jika p sebarang proposisi, pernyataan “not p” atau “negasi dp p” akan bernilai F jika p bernilai T dan sebaliknya. Dan ditulis dengan Øp ( “Ø” disebut operator unary/monadika) dan akan digambarkan dengan tabel kebenaran sebagai berikut :


2. Konjungsi/conjunction (and)
Konjungsi adalah suatu operator binary atau diadika (diadic). Jika p dan q suatu proposisi, pernyataan p and q akan bernilai kebenaran T jika dan hanya jika kedua p dan q mempunyai nilai kebenaran T, dan ditulis dengan p Ù q dimana operatornya terletak diantara kedua variabel (operand) tsb dan mempunyai tabel kebenaran seperti terlihat pada slide berikut :

Tabel kebenaran juga dapat disajikan dng suatu bentuk dua di mensi sebagai berikut :

• Bentuk terakhir ini hanya dapat digunakan hanya untuk fungsi dua variabel
• Perhatikan bahwa untuk kalimat “Benda ini berwarna merah” dan “Benda ini berwarna putih” jika digandeng dengan “and” maka berbunyi “Benda ini berwarna merah “and” putih” yang artinya lain dengan “Benda ini berwarna merah and Benda ini berwarna putih”, jelaskan !!
• Sifatnya :
Komutatif ( p Ù q = q Ù p)
Asosiatif ( (pÙq)Ùr = pÙ(qÙr) )
• Operand daripada suatu kunjungsi juga disebut dng conjunct.

3. Disjungsi (or)
Disjungsi yang juga ada yang menyebut dengan alternatif yang bersesuaian dengan bentuk “ Salah satu dari … atau ….” (“Either.. Or..) . Pernyataan “p or q” bernilai T jika dan hanya jika salah satu p atau q (atau keduanya) bernilai T, dan ditulis :
p Ú q
dan mempunyai tabel kebenaran seperti pada slide berikut.

Sifat :
1) Komutatif ( p Ú q = q Ú p )
2) Asosiatif ( (p Ú q) Ú r = p Ú (q Ú r) )
• Perhatikan bahwa terdapat dua pengertian or yaitu “inclusif or” dan “exclusive or”.
Sebagai contoh :
• “Pintu rumah terbuka” or “jendela rumah terbuka”. Hal tersebut dapat keduanya
• “Suta pergi kekantor naik becak” or “Suta pergi kekantor naik angkot”. Hal tersebut tidak mungkin keduanya.
• Contoh pertama “or inclusive” dan disimbolkan dengan Ú
Contoh kedua “or exclusive” atau “non-equivalen” dan disimbol kan dengan Ú ( atau XOR atau ↔)


4. Implikasi (Implication)
Arti dp pernyataan “If p then q” atau “p implies q” atau “q if p” atau “p hanya jika q” atau “q sarat perlu untuk p” atau “p sarat cukup untuk q” adalah T jika salah satu dari p bernilai T dan q bernilai T atau jika p bernilai F. Jika tidak demikian, yaitu p bernilai T dan q bernilai F, maka nilai F. Ditulis :
p ® q
dan tabel kebenarannya seperti pada slide berikut (ada yang menggunakan simbol Þ)

Pernyataan berikut adalah sama :
1). “If p then q” 2). “p implies q”
3). “q if p” 4). “p hanya jika q”
5). “q sarat perlu untuk p” 6). “p sarat cukup untuk q”
Untuk penjelasan ini maka perhatikan kalimat :
“Jika Anita pergi keluar negeri maka ia mempunyai passport”
Penjelasannya adalah sebagai berikut :
• Jika Anita keluar negeri ( T ) dan Ia mempunyai passport (T), maka legal (T)
• Jika Anita keluar negeri (T) dan Ia tidak mempu nyai passport (F), maka illegal (F)
• Jika Anita tidak keluar negeri (F) dan ia mempu nyai passport (T), maka legal (T)
• Jika Anita tidak keluar negeri (F) dan ia tidak mempunyai passport (F), maka legal (T)



• Perhatikan bahwa : pernyataan p ® q selalu mempunyai tabel kebenaran dng (Øp) Ú q dan juga dengan Ø(pÙØq), (buat tabel kebe narannya)
• Contoh penggunaannya :

Buktikan bahwa jika x bilangan real maka jika x^2 bilangan gasal maka x bilangan gasal.
Bukti andaikan x genap maka x = 2n dimana n sebarang bilangan real. X^2 = (2n)^2= 4n^2 = 2(2n^2) yang juga bilangan genap. Sehingga didapat, dengan kontraposistif, terbukti.

5. Ekuivalensi
Pernyataan “ p ekuivalen dengan q” mempunyai nilai kebenaran T jika dan hanya jika p dan q mempunyai nilai kebenaran yg sama ditulis dengan simbol :
p « q
dan tabel kebenarannya seperti pada slide berikut ( ada yang menggunakan simbol Û)


Sifat :
1) Komutatif ; ( p « q = q « p)
2) Asosiatif ; ( (p « q) « r = p « (q « r) )
3) Pernyataan Ø(p « q) mempunyai tabel kebenaran yang sama dengan pernyataan p Ú q (Tunjukan)

• Perhatikan bahwa ia juga dapat dipikirkan sebagai pernyataan “ p jika dan hanya jika q”
• Pernyataan p « q disebut juga dengan bikondisional daripada p dan q, sebab ia selalu mempunyai tabel kebenaran sama-dng p « q =T (p ® q ) Ù (q ® p) atau (p ® q) Ù (p ¬ q)
• Ditulis dengan p « q =T (p ® q) Ù (p ® q)


3. PSEUDOCODE


DEFINISI ALGORITMA
Asal kata Algoritma berasal dari nama Abu Ja’far Mohammed Ibn Musa al-Khowarizmi, ilmuan Persia yang menulis kitab al jabr w’al-muqabala (rules of restoration and reduction) sekitar tahun 825 M
• Algoritma adalah urutan langkah logis tertentu untuk memecahkan suatu masalah. Yang ditekankan adalah urutan langkah logis, yang berarti algoritma harus mengikuti suatu urutan tertentu, tidak boleh melompat-lompat. (Dari Microsoft Press Computer and Internet Dictionaary 1997, 1998)
• Alur pemikiran dalam menyelesaikan suatu pekerjaan yang dituangkan secara tertulis. Yang ditekankan pertama adalah alur pikiran, sehingga algoritma seseorang dapat juga berbeda dari algoritma orang lain. Sedangkan penekanan kedua adalah tertulis, yang artinya dapat berupa kalimat, gambar, atau tabel tertentu.

CONTOH ALGORITMA DALAM KEHIDUPAN NYATA:
• Jika seorang ingin memasak atau membuat kue, baik itu melihat resep ataupun tidak pasti akan melakukan suatu langkah-langkah tertentu sehingga masakannya atau kuenya jadi.
• Jika seseorang ingin mengirim surat kepada kenalannya di tempat lain, langkah yang harus dilakukan adalah:
o Menulis surat
o Surat dimasukkan ke dalam amplop tertutup
o Amplop ditempeli perangko secukupnya.
o Pergi ke Kantor Pos terdekat untuk mengirimkannya.
Dalam bidang komputer, algoritma sangat diperlukan dalam menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris. Tanpa algoritma yang dirancang baik maka proses pemrograman akan menjadi salah, rusak, atau lambat dan tidak efisien.

PELAKSANA ALGORITMA ADALAH KOMPUTER.
Manusia dan komputer berkomunikasi dengan cara: manusia memberikan perintah-perintah kepada komputer berupa instruksi-instruksi yang disebut program.
Alat yang digunakan untuk membuat program tersebut adalah bahasa pemrograman. Bahasa pemrograman sangat bermacam-macam: C, C++, Pascal, Java, C#, Basic, Perl, PHP, ASP, JSP, J#, J++ dan masih banyak bahasa lainnya. pemrograman cara memberikan instruksinya berbeda-beda namun bertujuan menghasilkan output yang sama.

DARI BERBAGAI BAHASA
Kriteria Algoritma Menurut Donald E. Knuth
1. Input: algoritma dapat memiliki nol atau lebih inputan dari luar.
2. Output: algoritma harus memiliki minimal satu buah output keluaran.
3. Definiteness (pasti): algoritma memiliki instruksi-instruksi yang jelas dan tidak ambigu.
4. Finiteness (ada batas): algoritma harus memiliki titik berhenti (stopping role).
5. Effectiveness (tepat dan efisien): algoritma sebisa mungkin harus dapat dilaksanakan dan efektif.
Contoh instruksi yang tidak efektif adalah: A = A + 0 atau A = A * 1
Namun ada beberapa program yang memang dirancang untuk unterminatable: contoh Sistem Operasi

JENIS PROSES ALGORITMA
1. Sequence Process: instruksi dikerjakan secara sekuensial, berurutan.
2. Selection Process: instruksi dikerjakan jika memenuhi kriteria tertentu
3. Iteration Process: instruksi dikerjakan selama memenuhi suatu kondisi tertentu.
4. Concurrent Process: beberapa instruksi dikerjakan secara bersama.

PEMBUATAN ALGORITMA MEMPUNYAI BANYAK KEUNTUNGAN
1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya.
2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
3. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.

BEBERAPA HAL YANG PERLU DIPERHATIKAN DALAM MEMBUAT ALGORITMA
1. Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami.
2. Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik.
3. Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman secara umum.
4. Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh komputer, pseudocode dalam notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan spesifikasi mesin yang menjalannya.
5. Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu permasalahan ke dalam bahasa pemrograman.
6. Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman. Ada beberapa hal yang harus diperhatikan pada translasi tersebut, yaitu:
a) Pendeklarasian variabel
Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa pemrograman apabila tidak semua bahasa pemrograman membutuhkannya.
b) Pemilihan tipe data
Apabila bahasa pemrograman yang akan digunakan membutuhkan pendeklarasian variabel maka perlu hal ini dipertimbangkan pada saat pemilihan tipe data.
c) Pemakaian instruksi-instruksi
Beberapa instruksi mempunyai kegunaan yang sama tetapi masing-masing memiliki kelebihan dan kekurangan yang berbeda.
d) Aturan sintaksis
Pada saat menuliskan program kita terikat dengan aturan sintaksis dalam bahasa pemrograman yang akan digunakan.
e) Tampilan hasil
Pada saat membuat algoritma kita tidak memikirkan tampilan hasil yang akan disajikan. Hal-hal teknis ini diperhatikan ketika mengkonversikannya menjadi program.
f) Cara pengoperasian compiler atau interpreter.
Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler atau interpreter.

CONTOH ALGORITMA
Algoritma menghitung luas persegi panjang:
1. Masukkan panjang (P)
2. Masukkan lebar (L)
3. L ← P * L
4. Tulis L
Dalam Algoritma, tidak dipakai simbol-simbol / sintaks dari suatu bahasa pemrograman tertentu, melainkan bersifat umum dan tidak tergantung pada suatu bahasa pemrograman apapun juga. Notasi-notasi algoritma dapat digunakan untuk seluruh bahasa pemrograman manapun.
DEFINISI PSEUDO-CODE
Kode atau tanda yang menyerupai (pseudo) atau merupakan pejelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma.
Problem: mencari bilangan terbesar dari dua bilangan yang diinputkan

CONTOH PSEUDO-CODE:
1. Masukkan bilangan pertama
2. Masukkan bilangan kedua
3. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak, kerjakan langkah 5.
4. Tampilkan bilangan pertama
5. Tampilkan bilangan kedua

Contoh Lain Algortima dan Pseudo-code:

Pseudo-code Algoritma
Nilai A ditambah dengan 5 A←A+5
Cetak nilai A bila lebih besar dari 10 IF A > 10 THEN PRINT A
Dari dua bilangan A dan B, cari bilangan yang terbesar IF A > B THEN PRINT A ELSE PRINT B

4. FLOWCHART ALGORITMA


.PENDAHULUAN
Flowchart adalah penggambaran secara grafik dari langkah-langkah dan urut-urutan prosedur dari suatu program. Flowchart menolong analis dan programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian.
Flowchart biasanya mempermudah penyelesaian suatu masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.

PEDOMAN-PEDOMAN DALAM MEMBUAT FLOWCHART
Bila seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan, seperti :
1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri ke kanan.
2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat dimengerti oleh pembacanya.
3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.
4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja, misalkan Menghitung Pajak Penjualan.
5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.
6. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuri dengan hati-hati. Percabangan-percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan pada flowchart yang sama. Simbol konektor harus digunakan dan percabangannya diletakan pada halaman yang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitan dengan sistem. Gunakan simbol-simbol flowchart yang standar.

JENIS-JENIS FLOWCHART
Flowchart terbagi atas lima jenis, yaitu :
1. Flowchart Sistem (System Flowchart)
2. Flowchart Paperwork / Flowchart Dokumen (Document Flowchart)
3. Flowchart Skematik (Schematic Flowchart)
4. Flowchart Program (Program Flowchart)
5. Flowchart Proses (Process Flowchart)

1. Flowchart Sistem
Flowchart Sistem merupakan bagan yang menunjukkan alur kerja atau apa yang sedang dikerjakan di dalam sistem secara keseluruhan dan menjelaskan urutan dari prosedur-prosedur yang ada di dalam sistem. Dengan kata lain, flowchart ini merupakan deskripsi secara grafik dari urutan prosedur-prosedur yang terkombinasi yang membentuk suatu sistem.
Flowchart Sistem terdiri dari data yang mengalir melalui sistem dan proses yang mentransformasikan data itu. Data dan proses dalam flowchart sistem dapat digambarkan secara online (dihubungkan langsung dengan komputer) atau offline (tidak dihubungkan langsung dengan komputer, misalnya mesin tik, cash register atau kalkulator).

2. Flowchart Paperwork / Flowchart Dokumen
Flowchart Paperwork menelusuri alur dari data yang ditulis melalui sistem. Flowchart Paperwork sering disebut juga dengan Flowchart Dokumen.
Kegunaan utamanya adalah untuk menelusuri alur form dan laporan sistem dari satu bagian ke bagian lain baik bagaimana alur form dan laporan diproses, dicatat dan disimpan.

3. Flowchart Skematik
Flowchart Skematik mirip dengan Flowchart Sistem yang menggambarkan suatu sistem atau prosedur. Flowchart Skematik ini bukan hanya menggunakan simbol-simbol flowchart standar, tetapi juga menggunakan gambar-gambar komputer, peripheral, form-form atau peralatan lain yang digunakan dalam sistem.
Flowchart Skematik digunakan sebagai alat komunikasi antara analis sistem dengan seseorang yang tidak familiar dengan simbol-simbol flowchart yang konvensional. Pemakaian gambar sebagai ganti dari simbol-simbol flowchart akan menghemat waktu yang dibutuhkan oleh seseorang untuk mempelajari simbol abstrak sebelum dapat mengerti flowchart.
Gambar-gambar ini mengurangi kemungkinan salah pengertian tentang sistem, hal ini disebabkan oleh ketidak-mengertian tentang simbol-simbol yang digunakan. Gambar-gambar juga memudahkan pengamat untuk mengerti segala sesuatu yang dimaksudkan oleh analis, sehingga hasilnya lebih menyenangkan dan tanpa ada salah pengertian.
4. Flowchart Program
Flowchart Program dihasilkan dari Flowchart Sistem. Flowchart Program merupakan keterangan yang lebih rinci tentang bagaimana setiap langkah program atau prosedur sesungguhnya dilaksanakan. Flowchart ini menunjukkan setiap langkah program atau prosedur dalam urutan yang tepat saat terjadi.
Programmer menggunakan flowchart program untuk menggambarkan urutan instruksi dari program komputer.


5. Flowchart Proses
Flowchart Proses merupakan teknik penggambaran rekayasa industrial yang memecah dan menganalisis langkah-langkah selanjutnya dalam suatu prosedur atau sistem.Flowchart Proses memiliki lima simbol khusus (lihat Gambar 4)

Gambar 4. Simbol Flowchart Proses
Flowchart Proses digunakan oleh perekayasa industrial dalam mempelajari dan mengembangkan proses-proses manufacturing. Dalam analisis sistem, flowchart ini digunakan secara efektif untuk menelusuri alur suatu laporan atau form.

SIMBOL-SIMBOL FLOWCHART
Simbol-simbol flowchart yang biasanya dipakai adalah simbol-simbol flowchart standar yang dikeluarkan oleh ANSI dan ISO.

5. STRUKTUR MASUKAN DAN KELUARAN

STRUKTUR SEKUENSIAL (RUNTUNAN)
Pada struktur sekuensial instruksi dikerjakan secara berurutan baris perbaris mulai dari baris pertama hingga baris terakhir, tanpa ada loncatan atau perulangan.
• Tiap instruksi dikerjakan satu per satu.
• Tiap instruksi dilaksanakan tepat sekali, tidak ada instruksi yang diulang.
• Urutan instruksi yang dilaksanakan pemroses sama dengan urutan instruksi sebagai tertulis di dalam teks algoritma.
• Akhir dari instruksi terakhir merupakan akhir algoritma.
Contoh Algoritma
Menghitung Luas Persegi Panjang :
1. Masukkan panjang (p)

2. Masukkan lebar ( l )

3. Hitung Luas (p * l )

4. Tulis Luas

Deklarasi :
A, B, C, D : integer
Deskripsi :
4. read (A, B) {1}
5. C A + B {2}
6. D A * B {3}
7. write (C, D) {4}

Deklarasi :
A, B, C, D : integer
Deskripsi :
4. read (A, B)
5. D A * B
6. C A + B
7. write (C, D)

Dari kedua algoritma hasil C dan D adalah SAMA
Tetapi jika algoritma di atas urutan no. 1,2 dan 3 diubah (ditukarkan ) maka menghasil keluaran yang berbeda (tidaksama) seperti berikut :
{di baca dua buah bilangan integer kemudian hitung penjumlahan dan perkalian dua buah bilangan tersebut, dan tampilkan hasilnya ke layar}

Deklarasi :
A, B, C, D : integer
Deskripsi :
C A + B
D A * B
read (A, B)
write (C, D)

Hasil C dan D akan berbeda dengan dua algoritma sebelumnya
STRUKTUR SELEKSI (PEMILIHAN)
Struktur seleksi adalah instruksi yang dipakai untuk memilih satu aksi dari
beberapa kemungkinan aksi berdasarkan suatu syarat Bentuk ke-1 dari pemilihan

Suatu aksi hanya dilakukan bila persyaratan atau kondisi tertentu dipenuhi. jika kondisi bernilai benar kerjakan aksi jika salah, tidak ada aksi apapun yang dikerjakan. Notasi algoritmik :
if Syarat then
Aksi {True}
endif {False}



Bentuk ke-2 dari pemilihan Apabila syarat dipenuhi maka aksi-1 dilaksanakan bila syarat tidak dipenuhi maka aksi- 2 yang dilaksanakan
Notasi Algoritma,
IF syarat THEN
aksi-1 {true}
ELSE
aksi-2 {false}
ENDIF


STRUKTUR PERULANGAN
Perulangan adalah instruksi yang dapat mengulang sederetan Instruksi secara berulang-ulang sesuai persyaratan yang ditetapkan.
Struktur instruksi perulangan pada dasarnya terdiri atas :
• Kondisi perulangan; suatu kondisi yang harus dipenuhi agar perulangan dapat terjadi.
• Badan (body) perulangan; deretan instruksi yang akan diulang-ulang pelaksanaannya.
• Pencacah (counter) perulangan; suatu variabel yang nilainya harus berubah agar perulangan dapat terjadi dan pada akhirnya membatasi jumlah perulangan yang dapat dilaksanakan

Jenis Perulangan :
2. For – Next
4. While – Do
6. Repeat – Until
Perulangan : FOR – NEXT
Bentuk umum :

For var=awal to akhir
…………….
instruksi-instruksi
……………..
Next var
Makna dari bentuk perulangan di atas adalah
ulangi instruksi tersebut berdasarkan variabel
perulangan mulai dari nilai awal hingga nilai
akhir.
Dari gambar di atas instruksi akan dikerjakan
sebanyak 4 kali, karena perulangan dimulai dari
1 sampai 4.
Perulangan : While – Do
Bentuk umum :
While {kondisi} do
…………..
instruksi-instruksi
…………..
Endwhile
Dari bentuk pengulangan di atas
instruksi akan dilaksanakan berulang kali selama kondisi bernilai TRUE , jika FALSE maka badan pengulangan tidak akan dilaksanakan yang berarti pengulangan selesai.

Contoh :
• Algoritma Cetak_Angka
• {mencetak 1, 2, .., 8 ke piranti keluaran}
• Deklarasi :
• K: integer
• Deskripsi :
• K=1 {inisialisasi}
• while k <= 8 do • write (k) • k=k + 1 • endwhile Perulangan : REPEAT – UNTIL Bentuk umum : Repeat ………. instruksi ………. Until ( kondisi ) Keterangan : Intruksi ( atau runtunan instruksi) akan dilaksanakan berulang kali sampai kondisi bernilai true, jika kondisi bernilai false maka pengulangan masih terus dilakukan. Contoh : • lgoritma Cetak_Angka • {mencetak 1, 2, .., 8 ke piranti keluaran} • Deklarasi : • K: integer • Deskripsi : • K=1 {inisialisasi} • repeat • write (k) • k= k + 1 • until k > 8


6. STRUKTUR KEPUTUSAN


DEFINISI
Struktur keputusan adalah struktur program yang melakukan proses pengujian untuk mengambil suatu keputusan apakah suatu baris atau blok instruksi akan diproses atau tidak. Pengujian kondisi ini dilakukan untuk memilih salah satu dari beberapa alternatif yang tersedia.
Syarat dalam dunia pemrograman adalah sebuah pernyataan Boolean,yang dapat bernilai benar (true) arau salah (false). Biasanya sebuah syarat terdiri dari operand-operand yang dihubungkan dengan operator logika. Yaitu: =, <>, >, <, >=, <=, and (dan) dan or (atau). STRUKTUR BRANCHING Struktur Branching Adalah perintah yang memungkinkan pemilihan atas perintah yang akan dijalankan sesuai dengan kondisi tertentu. Ketika program berjalan, mungkin hanya blok kode tertentu yang diperlukan saja yang akan dijalankan dengan kondisi tertentu. Hal itu dapat diatur menggunakan alur percabangan. Ada tiga pernyataan yang berkaitan dengan alur percabangan program yaitu: If....Then, If...Then...Else dan Select Case. • If…Then Pernyataan If...Then akan menguji suatu kondisi, jika True, program akan menjalankan pernyataan yang mengikutinya. Struktur If...Then bisa memiliki sintaks satu baris atau banyak baris. Sintaksnya adalah: If kondisi Then Pernyataan ‘Untuk perintah 1 baris If Kondisi Then ‘untuk perintah banyak baris Pernyataan End If Contoh kode dalam satu baris adalah: If Nilai >= 60 Then Hasil = “Lulus”
Contoh kode dalam banyak baris adalah:
If Nilai >= 80 Then
Msgbox “Anda Pintar”
ExitSub
End If

• If...Then...Else
Variasi dari pernyataan If...Then adalah pernyataan If...Then...Else yang akan menjalankan sebuah blok pernyataan jika kondisi bernilai True dan blok pernyataan lainnya jika kondisi False. Sintaks pernyataan If...Then...Else sebagai berikut:
If Kondisi Then
BlokPernyataan1
Else
BlokPernyataan2
End If
VB akan menguji kondisi, jika bernilai benar maka VB akan menjalankan blok pernyataan pertama kemudian melompat pada pernyataan di bawah End If. Jika kondisi bernilai salah VB mengabaikan blok pernyataan pertama dan menjalankan blok di bawah kata kunci Else. Contoh kode:
If Nilai >= 60 Then
Hasil = “Lulus”
Else
Hasil = “Tidak Lulus”
End If
Variasi lain dari pernyataan If...Then...Else menggunakan ElseIf sebagai berikut:
If Kondisi Then
BlokPernyataan1
ElseIf Kondisi2 Then
BlokPernyataan2
ElseIf Kondisi3 Then
BlokPernyataan3
Else
BlokPernyataanN
End If
Contoh kode banyak If sebagai berikut:
Dim Pesan As String
Nilai = InputBox(“Masukkan Nilai:”)
If Nilai <>
Pesan = “D”
ElseIf Nilai <>
Pesan = “C”
ElseIf Nilai <>
Pesan = “B”
Else
Pesan = “A”
End If
MsgBox(Pesan)

• Select Case
Pernyataan Select Case mirip dengan pernyataan If...Then...Else, pada dasarnya keduanya gunanya sama, tetapi menggunakan Select Case akan mempermudah menulis dan mengelola kode. Ketika pernyataan If...Then...Else memiliki banyak blok kode, kode menjadi sulit dibaca dan diikuti.
Struktur Select Case akan menguji ekspresi tunggal yang dievaluasi sekali pada bagian atas dari struktur. Hasil dari pengujian kemudian dibandingkan dengan beberapa nilai dan jika salah satu ada yang cocok, blok pernyataan yang berhubungan akan dijalankan.
Berikut adalah sintaks pernyataan Select Case:
Select Case Ekspresi
Case Nilai1
BlokPernyataan1
Case Nilai2
BlokPernyataan2
...
Case Else
BlokPernyataanN
End Select
Contoh kode sebagai berikut:
Dim Pesan As String
Select Case Weekday(Date)
Case vbSunday
Pesan = "Libur!"
Case vbMonday
Pesan = "I Love Monday!"
Case Else
Pesan = "Kerja lagi, kerja lagi!"
End Select
MsgBox (Pesan)

Argumen counter, awal, akhir dan penambahan/pengurangan semuanya adalah numerik. Pengulangan akan terus dijalankan sampai mencapai nilai counter. Contoh pengulangan For...Next adalah sebagai berikut:
Dim n As Integer
For n = 1 To 10 Step 2
‘Menambahkan item ke daftar ListBox
lista.AddItems “Item ke ” & n
Next
• For Each...Next
Pernyataan For Each mirip dengan pernyataan For...Next, kecuali variable pengulangan yang diperlukan bukan numerik melainkan array dan collection.
Pernyataan For Each akan mengulang untuk tiap-tiap elemen dalam array atau collection. Sintaksnya sebagai berikut:
For Each elemen In grup
[pernyataan]
[Exit For]
[Pernyataan]
Next
Elemen harus sama tipe datanya dengan tiap-tiap item dalam array atau collection. Grup adalah array atau collection. Langkah pengulangan secara otomatis melalui tiap-tiap elemen dalam array atau collection dan keluar dari pengulangan setelah mencapai akhir dari array atau collection. Contoh:
Hewan = Array("Kucing", "Anjing", "Monyet")
For Each NamaHewan In Hewan
‘tambahkan masing-masing data ke listbox
List1.AddItem (NamaHewan)
Next

STRUKTUR LOOPING
Struktur pengulangan/looping digunakan untuk menjalankan satu atau banyak baris kode secara berulang-ulang. Jenisnya adalah Do While...Loop, Do Until…Loop, For...Next dan For...Each...Next.
Pernyataan Do...Loop dapat anda gunakan jika belum tahu berapa kali pengulangan blok pernyataan. Jika Anda sudah tahu berapa kalo pengulangan blok pernyataan digunakan For...Next.

• Do...Loop
Do...Loop memungkinkan anda mengeksekusi serangkaian pernyataan berulang-ulang selama kondisi pengujian tetap benar. VB akan mengevaluasi ekspresi dan jika bernilai benar, pernyataan akan dijalankan. Ketika sampai
pada bagian akhir blok, ekspresi akan diuji lagi dan jika bernilai benar maka pernyataan akan diulang. Namun jika ekspresi bernilai salah maka program akan dilanjutkan ke pernyataan setelah loop.
Ada empat variari Do...Loop, dua yang pertama memiliki model yang sama. Pengualan akan dilakukan ketika kondisi bernilai benar atau sampai kondisinya bernilai benar. Keduai variasi menggunakan kata kunci While dan Until untuk menunjukkan berapa lama kondisi menjadi benar. Untuk menjalankan blok pernyataan While kondisi bernilai benar digunakan sintaks berikut.
Do While Kondisi
BlokPernyataan
Loop
Untuk menjalankan blok pernyataan Until kondisi menjadi benar digunakan sintaks berikut ini:
Do Until Kondisi
BlokPernyataan
Loop
Ketika VB menjalankan pengulangan di atas, yang pertama dilakukan adalah menguji kondisi, jika kondisi bernilai salah pernyataan pengulangan Do While akan dilewati tetapi pengulangan Do Until akan dijalankan. Ketika sampai pernyataan Loop, VB akan menguji ekspresi lagi dan mengulang blok pernyataan dari pengulangan Do While jika ekspresi bernilai salah dan pengulangan Do until jika ekspresi bernilai benar. Jika While akan berulang selama pengujian ekspresinya benar, sedangkan Until akan berulang selama kondisi ekspresinya salah.
Contoh Do While
Dim Nilai As Integer
Nilai = 0
Do While Nilai <>
Nilai = Nila + 5
Loop
‘Hasilnya 5, 10, 15, 20, ... sampai 100
Contoh Do Until
Dim Nilai As Integer
Nilai = 0
Do Until Nilai >= 100
Nilai = Nilai + 5
Loop
‘Hasilnya sama seperti Do While di atas
Variasi lain dari pengulangan Do Loop adalah menjalankan pernyataan dulu dan menguji kondisi setelah pernyataan dijalankan. Sintaksnya:
Do
BlokPernyataan
Loop While Kondisi
Atau
Do
BlokPernyataan
LoopUntil Kondisi
Contoh Loop While:
Dim Nilai As Integer
Nilai = 0
Do
Nilai = Nilai + 5
Loop While Nilai <>
Contoh Loop Until
Dim Nilai As Integer
Nilai = 0
Do
Nilai = Nilai + 5
Loop Until Nilai >= 100
• For... Next
Pada pengulangan For...Next, Anda harus mengetahui berapa kali pernyataan dalam pengulangan akan dijalankan. Pengulangan For...Next menggunakan suatu variabel (disebut counter) yang nilainya akan bertambah atau berkurang selama proses tiap pengulangan dari loop. Pengulangan For...Next memiliki sintaks sebagai berikut:
For Counter = awal To Akhir [Step penambahan/pengurangan]
Pernyataan
Next [counter]

Senin, 02 Mei 2011

physical data model

BAB I
PENDAHULUAN

1. Data Model
Data merupakan bentuk simbol yang mewakili, menggambarkan atau membuktikan keberadaan suatu benda, peristiwa atau fakta. Akan tetapi simbol- simbol data tersebut tidak sama dengan kenyataannya, sehingga dapat dinyatakan bahwa simbol data tidak pernah lengkap mewakili kenyataan dan hal ini tergantung kepada siapa pemakainya. Contohnya adalah sebuah nama orang. Orang lain yang mengenalinya mempunyai pandangan dan gambaran yang berbeda terhadap orang tersebut meskipun mereka sepakat bahwa orang tersebut dikenali dengan satu istilah yaitu nama. Si A mengenali melalui suaranya dan cara berbicaranya, Si B mengenali dari postur tubuh dan cara berjalannya dan lain sebagainya. Untuk mengenali orang tersebut maka dibuatlah istilah nama yang mewakili fakta atau gambaran orang tersebut, terlepas dari berbagai perbedaan pandangan dari orang lain di sekelilingnya.
Sama dengan konsep yang dipakai pada model penyimpanan data oleh komputer, data harus dikenali dan kategorikan umtuk mempermudah pengelolaannya seperti penyimpanan, perubahan, penyimpanan dan pemanggilan kembali untuk penyimpanan data. Oleh karena itu, bentuk dan pengertian struktur dari bagian data bagi mereka relatif sama untuk semua organisasi dan pemakai data dalam organisasi. Pengertian ini menyatakan sebuah model data. Sebuah model data adalah sebuah perwakilan abstrak dari data, dua kategori umum dari model data, yaitu:
• Model Logika Data (Logical Data Model), yaitu konsep bagaimana data dapat merepresentasikan sebuah kenyataan, dimasukkan ke dalam sebuah pemrosesan logika dan dapat menghasilkan informasi.
• Model Fisik Data (Physical Data Model), yaitu konsep bagaimana data disimpan pada media penyimpanan (storage) dalam suatu susunan secara fisik.
Aspek yang menentukan kualitas dari model dan arsitektur data adalah:
• Structure, menerangkan bagaimana data disusun, secara hierarchical, network, relational, atau object-oriented.
• Integrity, menunjukkan bagaimana data dapat dihubungkan sesuai aspek strukturnya.
• Manipulation, menunjukkan bagaimana data dapat diolah berdasarkan logika pengolahan data tertentu.
• Querying, menunjukkan bagaimana kumpulan data dapat diseleksi sesuai logika pengolahan data tertentu.
Contoh pemanfaatannya secara praktis adalah pada pemanfaatan relational model, di mana kumpulan data dinyatakan sebagai hubungan matematis pada sistem pengelolaan basis data (Database Management System-DBMS).

BAB II
ISI

1. Physycal data model
Physical data model Merupakan model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data tersebut. Setiap tabel mempunyai sejumlah kolom di mana setiap kolom memiliki nama yang unik.
Sebuah physical data model (alias desain database) adalah representasi dari desain data yang memperhitungkan fasilitas dan kendala sistem database yang diberikan manajemen. Dalam siklus hidup proyek itu biasanya berasal dari model data logis, meskipun mungkin reverse-engineered dari implementasi database yang diberikan. Sebuah physical data model lengkap akan mencakup semua artefak database yang diperlukan untuk membuat hubungan antara tabel atau mencapai tujuan kinerja, seperti indeks, definisi kendala, menghubungkan tabel, tabel dipartisi atau cluster. Physical data model biasanya dapat digunakan untuk menghitung perkiraan penyimpanan dan mungkin termasuk rincian alokasi penyimpanan khusus untuk sistem database tertentu.
Saat ini, ada enam database utama dalam pasar bisnis, Oracle, Postgres, SQL Server, Sybase, DB2 dan MySQL. Ada banyak sistem RDBMS besar lainnya di luar sana, tetapi ini cenderung baik untuk menjadi warisan database atau digunakan dalam akademis seperti universitas atau kolese pendidikan lanjutan. Sebuah physical data model pada setiap pelaksanaan akan secara signifikan berbeda, paling tidak karena kebutuhan OS yang mendasari yang duduk di bawah mereka. Contohnya SQL Server yang hanya berjalan pada sistem operasi Microsoft Windows, sedangkan Oracle dan MySQL dapat berjalan di Solaris, Linux dan sistem operasi berbasis UNIX serta Windows.
Ini berarti bahwa persyaratan disk, persyaratan keamanan dan banyak aspek lain dari physical data model akan dipengaruhi sepenuhnya oleh RDBMS yang database administrator (atau organisasi mereka) memilih untuk menggunakan.

2. Jenis Phisical Data Model
Model Data Fisik adalah model yang menjelaskan cara komputer memandang data, bahwa data tersimpan pada lokasi fisik sebagai file-file yang terpisah. Model data fisik terbagi menjadi 2 yaitu :
1. Penyimpanan berurutan
yaitu organisasi atau penyusunan data di suatu medium penyimpanan yang terdiri dari satu record mengikuti satu record lain dalam suatu urutan tertentu. Misalnya, record pegawai disusun dalam urutan nomor pegawai. Saat penyimpanan berurutan digunakan, data pertama harus diproses pertama, data kedua diproses kedua, dan seterusnya sampai akhir file itu ditemukan. Contoh media penyimpanan ini adalah pita magnetik (magnetic tape).
2. Penyimpanan akses lansung
yaitu suatu cara mengorganisasikan data yang memungkinkan record-record ditulis dan dibaca tanpa pencarian secara berurutan. Unit perangkat keras yang memungkinkan hal ini disebut Direct Access Storage Device (DASD). DASD memiliki mekanisme membaca dan menulis yang dapat diarahkan ke lokasi manapun dalam media penyimpanan. Yang paling populer adalah piringan magnetik (magnetic disc).

BAB III
PENUTUP

Kesimpulan

Model Data Fisik adalah model yang menjelaskan cara komputer memandang data, bahwa data tersimpan pada lokasi fisik sebagai file-file yang terpisah

Physical data model Merupakan model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data tersebut. Setiap tabel mempunyai sejumlah kolom di mana setiap kolom memiliki nama yang unik.

Twitter Delicious Facebook Digg Stumbleupon Favorites More